Mybatis + Mysql插入後獲取主鍵id


使用MyBatis往MySQL數據庫中插入一條記錄後,需要返回該條記錄的自增id


先看插入的配置文件:

在insert的標籤里加兩個屬性:useGeneratedKeys="true"         keyProperty="id"   ,這個keyProperty的id就是我們要返回的主鍵id

<insert id="addMessge" useGeneratedKeys="true" keyProperty="id" parameterType="com.message.entity.Message">
		insert into t_message(
		id,
		m_title,
		m_content,
		m_image,
		m_state,
		m_ip,
		m_top,
		create_date,
		modify_date,
		user_id
		)
		values(
		#{id},
		#{title},
		#{content},
		#{image},
		#{state},
		#{ip},
		#{top},
		now(),
		now(),
		#{user.id}
		);
	</insert>


entity:

public class Message extends BaseEntity{

	/** 用戶id */
	private Integer id;
	
	/** 創建時間 */
	private Date createDate;
	
	/** 修改時間 */
	private Date modifyDate;
	
	/** 標題. */
	private String title;
	
	/** 內容. */
	private String content;
	
	/** 姓名. */
	private String image;
	
	/** 狀態. 00:刪除   11:未刪除 */
	private String state;
	
	/** 留言者ip. */
	private String ip;
	
	/** 是否置頂  0:否  1:是 */
	private String top;
	
	/** 用戶. */
	private User user;  
	get set 方法略...



在看看dao層接口:

public void addMessge(Message message);

service層對於插入語句的調用:


public void addMessage (Message message) {
		
		messageDao.addMessge(message);
		
		System.out.println(message.getId());
	} 


這裏輸入的就是插入的數據生成的主鍵id了








發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章