从一个简单的WEB项目入手来简单地了解一下什么是Spring之持久层(Dao)

来源:互联网 发布:python opencv hough 编辑:程序博客网 时间:2024/05/01 07:11

我们从几乎所有的项目都会有的登录模块来入手学习一下Spring的基本概念。关于登录的具体逻辑我这里就不多加赘述。从MVC的思想上我们可以演化出大概3个分层模块:展现层,业务层(Service),持久层(Dao)
1.持久层的学习 UserDao

//下面是通过Spring注解的方式定义了一个DAO    //现如今我们可以使用通过注解的方式和通过XML配置的方式混合使用来定义一个bean,而通过注解的方式则使得定义一个bean的工作变得简单了很多@Repositorypublic class UserDAO {    //下面是通过自动注入 获得了JdbcTemplate 中的bean    @Autowired    private JdbcTemplate jdbcTemplate;    //返回1(登录成功) 返回0(登陆不成功)    public int getMatchCount(String userName,String password){        String sqlStr = "Select count(*) from t_user where user_name = ?  and password = ?";        return jdbcTemplate.queryForInt(sqlStr,new Object[]{ userName, password});    }    //根据用户名获得User对象    public User findUserByUserName(final String userName){    }}

通过上面的例子我们大概明白了持久层的作用:负责数据的访问很操作,DAO类被上层的业务层类所调用。而从中我们可以发现很多细节都需要记住:
1)Spring JDBC 对于JDBC API进行了简单的封装,传统的数据库API少不了各找重复的代码和异常处理,有了Spring JDBC我们就可以只用关注那些必不可少的代码的编写,其模板类是org.springframework.jdbc.core.JdbcTemplate。
2)经验:我们在用数据库的时候会涉及到密码这个隐私度比较高的东西,一般利用MD5摘要比较好。

0 0
原创粉丝点击