java框架快速使用mysql_Java框架spring 学习笔记(十五):操作MySQL数据库

1 packagecom.jdbc;2

3 importorg.junit.Test;4 importorg.springframework.jdbc.core.JdbcTemplate;5 importorg.springframework.jdbc.core.RowMapper;6 importorg.springframework.jdbc.datasource.DriverManagerDataSource;7

8 import java.sql.*;9 importjava.util.List;10

11 public classJdbcTemplateDemo {12 //1 增加操作

13 @Test14 public voidadd() {15 //设置数据库信息

16 DriverManagerDataSource dataSource = newDriverManagerDataSource();17 dataSource.setDriverClassName("com.mysql.jdbc.Driver"); //添加驱动

18 dataSource.setUrl("jdbc:mysql:///test"); //添加数据库路径

19 dataSource.setUsername("root"); //用户名

20 dataSource.setPassword("xxxxxx"); //密码21

22 //创建jdbcTemplate对象,设置数据库

23 JdbcTemplate jdbcTemplate = newJdbcTemplate(dataSource);24

25 //sql语句

26 String sql = "INSERT INTO User VALUES(?,?)";27

28 //调用jdbcTemplate对象里面的update方法实现插入操作

29 int rows = jdbcTemplate.update(sql, "Lucy", "250");30 System.out.println(rows);31 }32

33 //2 删除操作

34 @Test35 public voiddelete() {36 //设置数据库信息

37 DriverManagerDataSource dataSource = newDriverManagerDataSource();38 dataSource.setDriverClassName("com.mysql.jdbc.Driver"); //添加驱动

39 dataSource.setUrl("jdbc:mysql:///test"); //添加数据库路径

40 dataSource.setUsername("root"); //用户名

41 dataSource.setPassword("xxxxxx"); //密码42

43 //创建jdbcTemplate对象,设置数据库

44 JdbcTemplate jdbcTemplate = newJdbcTemplate(dataSource);45

46 //sql语句

47 String sql = "DELETE FROM user WHERE username=?";48

49 //调用jdbcTemplate对象里面的update方法实现删除操作

50 int rows = jdbcTemplate.update(sql, "Lucy");51 System.out.println(rows);52 }53

54 //3 修改操作

55 @Test56 public voidupdate() {57 //设置数据库信息

58 DriverManagerDataSource dataSource = newDriverManagerDataSource();59 dataSource.setDriverClassName("com.mysql.jdbc.Driver"); //添加驱动

60 dataSource.setUrl("jdbc:mysql:///test"); //添加数据库路径

61 dataSource.setUsername("root"); //用户名

62 dataSource.setPassword("xxxxxx"); //密码63

64 //创建jdbcTemplate对象,设置数据库

65 JdbcTemplate jdbcTemplate = newJdbcTemplate(dataSource);66

67 //sql语句

68 String sql = "UPDATE user SET password=? WHERE username=?";69 //调用jdbcTemplate对象里面的update方法实现操作修改方法

70 int rows = jdbcTemplate.update(sql, "111111", "Lucy");71 System.out.println(rows);72 }73

74 //4 查询操作75 //4.1查询有多少记录

76 @Test77 public voidfindCount() {78 //设置数据库信息

79 DriverManagerDataSource dataSource = newDriverManagerDataSource();80 dataSource.setDriverClassName("com.mysql.jdbc.Driver"); //添加驱动

81 dataSource.setUrl("jdbc:mysql:///test"); //添加数据库路径

82 dataSource.setUsername("root"); //用户名

83 dataSource.setPassword("xxxxxx"); //密码84

85 //创建jdbcTemplate对象,设置数据库

86 JdbcTemplate jdbcTemplate = newJdbcTemplate(dataSource);87

88 //sql语句

89 String sql = "SELECT count(*) FROM user";90 //调用jdbcTemplate对象里面的queryForObject 方法得到记录数91 //queryForObject 查询返回某一个值,第一个参数,第二个参数返回类型

92 int count = jdbcTemplate.queryForObject(sql, Integer.class);93 System.out.println("一共查询到" + count + "条记录");94 }95

96 //4.2查询返回对象,jdbc原始操作

97 @Test98 public voidfindObject() {99 //创建连接对象

100 Connection conn = null;101 //创建预编译对象

102 PreparedStatement psmt = null;103 //创建结果集对象

104 ResultSet rs = null;105

106 //加载驱动

107 try{108 Class.forName("com.mysql.jdbc.Driver");109 conn = DriverManager.getConnection("jdbc:mysql:///test", "root", "xxxxxx");110 //编写sql语句,查询表中所有记录

111 String sql = "SELECT * FROM user WHERE username=?";112 //预编译sql

113 psmt =conn.prepareStatement(sql);114 //设置参数值

115 psmt.setString(1, "Lucy");116 //执行sql

117 rs =psmt.executeQuery();118 //遍历结果集

119 while(rs.next()) {120 //得到返回结果

121 String username = rs.getString("username");122 String password = rs.getString("password");123 //放到User对象里面

124 User user = newUser();125 user.setUsername(username);126 user.setPassword(password);127 //输出查询结果

128 System.out.println(user);129 }130 } catch(Exception e) {131 e.printStackTrace();132 } finally{133 try{134 //关闭数据库

135 rs.close();136 psmt.close();137 conn.close();138 } catch(SQLException e) {139 e.printStackTrace();140 }141 }142 }143

144 //4.3查询返回对象

145 @Test146 public voidfindObject1() {147 //设置数据库信息

148 DriverManagerDataSource dataSource = newDriverManagerDataSource();149 dataSource.setDriverClassName("com.mysql.jdbc.Driver"); //添加驱动

150 dataSource.setUrl("jdbc:mysql:///test"); //添加数据库路径

151 dataSource.setUsername("root"); //用户名

152 dataSource.setPassword("xxxxxx"); //密码153

154 //创建jdbcTemplate对象,设置数据库

155 JdbcTemplate jdbcTemplate = newJdbcTemplate(dataSource);156

157 //sql语句 根据username查询

158 String sql = "SELECT * FROM user WHERE username=?";159

160 //查询返回对象,第一个参数sql语句,第二个参数是RowMapper接口,需要自己写类做数据封装,第三个参数是可变参数

161 User user = jdbcTemplate.queryForObject(sql, new MyRowMapper(), "Tom");162 System.out.println(user);163 }164

165 //4.4查询返回对象List

166 @Test167 public voidfindList() {168 //设置数据库信息

169 DriverManagerDataSource dataSource = newDriverManagerDataSource();170 dataSource.setDriverClassName("com.mysql.jdbc.Driver"); //添加驱动

171 dataSource.setUrl("jdbc:mysql:///test"); //添加数据库路径

172 dataSource.setUsername("root"); //用户名

173 dataSource.setPassword("xxxxxx"); //密码174

175 //创建jdbcTemplate对象,设置数据库

176 JdbcTemplate jdbcTemplate = newJdbcTemplate(dataSource);177

178 //sql语句 查询所有记录

179 String sql = "SELECT * FROM user";180

181 //query第一个参数sql语句,第二个参数是RowMapper接口,需要自己写类做数据封装,第三个参数是可变参数可省略

182 List list = jdbcTemplate.query(sql, newMyRowMapper());183 System.out.println(list);184 }185 }186 //自己写数据实现类

187 class MyRowMapper implements RowMapper{188 public User mapRow(ResultSet rs,int num) throwsSQLException{189 //1 从结果集里得到数据

190 String username = rs.getString("username");191 String password = rs.getString("password");192 //2 把得到的数据放到对象里面

193 User user = newUser();194 user.setUsername(username);195 user.setPassword(password);196 returnuser;197 }198 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值