web基础dao层开发
来源:互联网 发布:淘宝泳衣女装 编辑:程序博客网 时间:2024/05/22 14:46
前几天写了jsp调servlet层,今天写了dao层操作数据库。
首先新建数据库我是用的sql server数据库。建好数据库和表之后,根据数据库字段新建UserVo类,此类的属性跟表字段一一对应,
然后创建get set方法。
UserVo这个类在整个项目中占有很重要的地位,即可得到前端传来的参数,又可得到数据库返回的数据。
数据库跟UserVo类创建好之后,就创建连接数据库类,然后创建dao层,dao层使用的是接口类型的,为了实现多态,方便其他类调用。
接口是没有方法体的,dao层的方法体主要是在dao的实现层体现出来的。
,public static Connection getConnection()
{
Connection conn=null;
try {
//获得odbc驱动
/*Driver driver=DriverManager.getDriver("jdbc:odbc:ticket");
//注册驱动
DriverManager.registerDriver(driver);
//建立数据库连接
conn=DriverManager.getConnection("jdbc:odbc:ticket");*/
//加载驱动(把需要的驱动加入内存)
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//sun.jdbc.odbc.JdbcOdbcDriver是sql server自带的桥接驱动,每个数据库都有自动的驱动和驱动包
//得到连接(指定连接到哪个数据源)数据源指向数据库从而连接数据库
conn=DriverManager.getConnection("jdbc:odbc:hpe");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
连接数据库,因为不想下载sql server的驱动jar包了,所以就采用jdbc-odbc的桥接形式连接,
public static void colse(Connection conn)
{
if(conn!=null)
{
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
连接数据源处理后一定要关闭连接。
然后写dao层和实现层,写实现层时候先建立数据库连接Connection ,然后创建sql语句。然后通过连接获取sql容器preparedstatement。
再然后给sql语句占位符赋值,然后再查数据库,如果数据库有返回值则把支取出来,赋给UserVo从而返回出去。
Connection conn=null;
List list=new ArrayList();
conn=Utilcom.getConnection();
String sql="select * from tableuser";
try {
PreparedStatement state= conn.prepareStatement(sql);
ResultSet rs=state.executeQuery();
while(rs.next()==true){
UserVo user=new UserVo();
String username=rs.getString(1);
String psd=rs.getString(2);
String sex=rs.getString(3);
user.setPassword(psd);
user.setSex(sex);
user.setUsername(username);
list.add(user);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
Utilcom.close(conn);
}
return list;
如果没返回指的话直接执行修改增加删除即可
public void addUser(UserVo user) {
// TODO Auto-generated method stub
Connection conn=null;
conn=Utilcom.getConnection();
String sql="insert into tableuser (username,password,sex) values (?,?,?)";
try {
PreparedStatement state=conn.prepareStatement(sql);
state.setString(1, user.getUsername());
state.setString(2, user.getPassword());
state.setString(3, user.getSex());
int rs=state.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
Utilcom.close(conn);
}
}
- web基础dao层开发
- Java Web 开发基础------DAO
- Mybatis 开发dao层
- dao层开发代码
- Mybatis-Dao层开发之原始dao
- sping+hibernate Dao层开发
- MyBatis (二) Dao层开发
- MyBatis的Dao层开发
- Web基础之反射机制优化JDBC中DAO层对象的封装
- Java web Dao层的作用简介
- JavaEE开发系列---dao层开发
- Spring+Hibernate DAO 持久层开发
- 项目开发DAO层的封装!
- php框架开发四(DAO层)
- mybaits开发之通用 dao层编写
- Mybatis-Dao层开发之Mapper接口
- MyBatis——Dao层开发总结
- (2)开发环境搭建-DAO层
- Github Pages
- 酸甜苦辣,2016
- atal: unable to access 'https://github.com/Homebrew/brew/': SSLRead() return error -9806
- VMware虚拟机Linux下装锐捷教程
- C语言总结
- web基础dao层开发
- 观察者模式及Java实现例子
- 教你如何迅速秒杀掉:99%的海量数据处理面试题
- 图片加载框架之Picasso
- 【LeetCode】 374. Guess Number Higher or Lower
- [bigdata-014] 在ubunut 14.04 上安装mongodb 2.4.9
- [AHK]脚本调度脚本
- md5加密工具类
- mybatis入门系列(一)