欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

數據操作邏輯

系統 1675 0

結合上一篇筆記,這一篇是關于數據操作的各種邏輯實現,以Message類為例

?

包圖
數據操作邏輯

Message類,已簡化

?

    package com.ccit.bean;

public class Message {
	private Integer id;
	private String title;
	private String content;
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getTitle() {
		return title;
	}
	public void setTitle(String title) {
		this.title = title;
	}
	public String getContent() {
		return content;
	}
	public void setContent(String content) {
		this.content = content;
	}
}
  

?

dao.inter包 MessageDao接口

?

    package com.ccit.dao.inter;

import com.ccit.bean.Message;
import com.ccit.tools.PageDiv;

public interface MessageDao {
	public boolean add(Message m);
	public boolean update(Message m);
	public boolean delete(int id);
	public Message getMsg(int id);
	public PageDiv<Message> getAll(int pageNo, int pageSize);
.。。。。。
}
  

?

dao.impl包

?

DaoBase類

    package com.ccit.dao.impl;

import com.ccit.jdbc.template.JDBCTemplate;
public class DaoBase {
	protected JDBCTemplate template = JDBCTemplate.getJDBCTemplate();
}
  

?MessageDaoImpl類

    package com.ccit.dao.impl;

import java.sql.Timestamp;
import java.util.List;

import com.ccit.bean.Message;
import com.ccit.dao.inter.MessageDao;
import com.ccit.rowmap.MsgRowMapper;
import com.ccit.tools.PageDiv;

public class MessageDaoImpl extends DaoBase implements MessageDao {

	@Override
	public boolean add(Message m) {
		boolean flag = false;
		String sql="insert into t_msg(m_title ,m_content)values(?,?)";
		if(this.template.ExecuteUpdate(sql, m.getTitle(),m.getContent(),) > 0) {
			flag = true;
		}
		return flag;
	}
	@Override
	public boolean update(Message m) {
		boolean flag = false;
		String sql = "update t_msg set m_title=?,m_content=? where id=?";
		if(this.template.ExecuteUpdate(sql, m.getTitle(),m.getContent(),m.getId()) > 0) {
			flag = true;
		}
		return flag;
	}
	@Override
	public boolean delete(int id) {
		boolean flag = false;
		String sql="delete from t_msg where id = (?)";
		if(this.template.ExecuteUpdate(sql,id)>0){
			flag = true;
		}
		return flag;
	}
	@Override
	public Message getMsg(int id) {
		Message m = null;
		String sql="select * from t_msg where id="+id;
		m = (Message) this.template.getUniquObject(sql, new MsgRowMapper());
		return m;
	}

。。。。。。
}
  

?

dao.factory包 DaoFactory類

    package com.ccit.dao.factory;

import java.io.IOException;
import java.util.Properties;

import com.ccit.dao.impl.DaoBase;

public class DaoFactory {

	public static DaoBase getDao(String daoName){
		DaoBase db = null;
		Properties p = new Properties();
		try {
			p.load(DaoFactory.class.getResourceAsStream("/dao.properties"));
			db=(DaoBase)Class.forName(p.getProperty(daoName)).newInstance();
		} catch (IOException e) {
			e.printStackTrace();
		} catch (InstantiationException e) {
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		
		return db;
	}
}
  

?

JDBCTemplate類

請參照另一篇筆記 http://ericblog.iteye.com/blog/1014356

?

MsgRowMapper類

實現RowMapper接口

    package com.ccit.rowmap;

import java.sql.ResultSet;
import java.sql.SQLException;

import com.ccit.bean.Message;
import com.ccit.dao.inter.RowMapper;

public class MsgRowMapper implements RowMapper {
	@Override
	public Object RowMap(ResultSet rs) {
		Message m = new Message();
		try {
			m.setContent(rs.getString("m_content"));
			m.setId(rs.getInt("id"));
			m.setTitle(rs.getString("m_title"));
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return m;
	}
}

  

?

RowMapper接口

    package com.ccit.dao.inter;

import java.sql.ResultSet;

public interface RowMapper {

	/**
	 * 把RS中的當前光標的數據轉換為一個對象
	 * @param rs
	 * @return
	 */
	public Object RowMap(ResultSet rs);
}
  

?

dao.properties配置信息

    MessageDao=com.ccit.dao.impl.MessageDaoImpl
  

?

代碼挺多,跑起來之后更有助于理解。

對Message操作全放在MessageDaoImpl這個類中實現,在調用時通過DaoFactory獲得。impl類將寫好的sql語句及其他參數交給JDBCTemplate類執行。

數據操作邏輯


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 在线看片h站 | 亚洲成人激情av | 国产视频中文字幕 | 日韩精品一区二区三区中文3d | 午夜黄色大片 | 国产成人综合95精品视频免费 | 中文字幕日韩在线 | 欧美日韩一区二区综合在线视频 | 亚洲综合在线一区 | 久久99精品久久久久久综合 | 嫩草影院在线观看网站成人 | 99精品国产一区二区青青牛奶 | 日本三级韩国三级香港三级a级 | 蜜臀AV在线观看 | 久久中字 | 羞羞视频网站在线看 | 欧美日韩国产综合视频在线看 | 国产精品一区二区三区免费 | 精品亚洲福利一区二区 | 夜色成人性y | 一级黄色免费毛片 | 性色av一区二区三区 | 成人免费毛片在线观看 | 欧美成人精品欧美一级乱黄 | 精品无人区一区二区三 | 日本久久中文字幕 | 国产精品成人va在线观看入口 | 婷婷的久久五月综合先锋影音 | 奇米色吧 | 婷婷视频网站 | 一级毛片免费视频 | 久久国产精品99久久久久久牛牛 | 日韩中文字幕在线有码视频网 | 九九视频精品全部免费播放 | 欧美成人一级 | 欧美国产高清 | www.嫩草影院.com | 亚洲精品国产第一区二区多人 | 亚洲一区欧美日韩 | 毛片成人网 | 天天干电影 |