一、实验目的
- 掌握在Spring家族中框架的学习思路;
- 以spring JdbcTemplate为例,掌握spring框架学习的方法。
二、实验器材
- 计算机
三、实验内容
使用Spring JdbcTemplate实现登录功能。具体要求如下:根据账号和密码进行登录操作,登录结果分为三种情况:
- 账号不存在
- 账号存在,但密码错误
- 账号密码都正确
根据不同的登录结果,给出相应的提示信息。
四、实验步骤
模块说明:Spring是一站式的框架,对web、service、dao层都提供了实现技术,本模块就是使用Spring框架对各层实现技术的搭建过程。。
登录模块功能简介:从实现上将模块分为web层、Dao层、Service层,数据库使用mysql 。 。
1.创建需要用到的数据库表
2.使用Spring的JDBC模板JdbcTemplate完成dao层的设计(也就是完成对数据库的访问操作)
本模块涉及到对两张数据表的操作,故有两个dao的类,分别对每个表执行相应的操作:
UserDao.java
@Repository(value="userDao") //通过Spring注解定义一个Dao
public class UserDao{
@Autowired
private JdbcTemplate jdbcTemplate;
//根据用户名和密码查询是否在数据库中存在记录,若存在返回1,否则返回0
public int getMatchCount(String userName,String password){
String sql = "select count(*) from spring_login "+
" where username=? and password=?";
return jdbcTemplate.queryForObject(sql, new Object[]{
userName,password},Integer.class);
}
//根据用户名查找定位到指定的用户
public User findUserByUserName(final String userName){
String sql = "select userid,username,credits "
+" from spring_login where username=?";
final User user = new User();
jdbcTemplate.query(sql,new Object[]{
userName},
new RowCallbackHandler(){
public void processRow(ResultSet rs) throws SQLException{
user.setUserid(rs.getInt("userid"));
user.setUsername(userName);
user.setCredits(rs.getInt("credits"));
}
});
return user;
}
//更新用户信息
public void updateLoginInfo