Java登录第一版


Java登录第一版

笔者:Keven 2016-6-16
懒惰的人总有跌倒不爬起来的理由

登录是最简单、最基础的代码能力,基础决定一个人最终能走多远!

数据库设计:

id account password user_name update_date
1 keven 123 凯文 2016-06-16

实体bean:

1.private String account;
2.private Integer id;
3.private String password;
4.private String user_name;
5.private Date update_date;

Mapper:

1.<mapper namespace="com.shxt.user.dao.UserDao">
2.
3.
4.<sql id="user_base_column">
5. id,account,user_name
6.</sql>
7.
8.<select id="login" resultType="com.shxt.user.model.User">
9.SELECT
10. <include refid="user_base_column"/>
11. FROM web_user WHERE account=#{account} AND password=#{password}
12.</select>
13.<update id="update" parameterType="com.shxt.user.model.User">
14. UPDATE web_user
15. <set>
16. <if test="password != null and password != ''">password = #{password},</if>
17. <if test="user_name != null and user_name != ''">user_name = #{user_name},</if>
18. <if test="update_date != null">update_date = #{update_date},</if>
19. </set>
20. WHERE id = #{id}
21.
22.</update>


UserDao接口:

1.     public interface UserDao {
2.
3.public User login(@Param("account") String account, @Param("password") String password);
4.public void update(User user);

}
ServiceImpl(条件判断,Session处理)

1.@Override
2.public User login(String account, String password) {
3.
4. SqlSession sqlSession = null;
5. try {
6. sqlSession = MyBatisUtils.getSqlSession();
7.
8. User user = sqlSession.getMapper(UserDao.class).login(account, password);
9. // 判断
10. if (user != null) {
11. Date now = new Date();
12. user.setUpdate_date(now);
13. sqlSession.getMapper(UserDao.class).update(user);
14. sqlSession.commit();
15. return user;
16. } else {
17. throw new RuntimeException("用户名或者密码错误,请重新登录");
18. }
19.
20. } finally {
21. MyBatisUtils.closeSqlSession(sqlSession);
22. }
23.
24.}

servlet、及jsp

1.@WebServlet("/main")
2.//请求转发(不改变路径)
3.request.getRequestDispatcher("WEB-INF/jsp/main/main.jsp").forward(request, response)
;

main.jsp

1.<iframe src="frameset"></iframe>

frameset
注意:有frameset就不能有body
@WebServlet(“/frameset”)
request.getRequestDispatcher(“WEB-INF/jsp/main/frameset.jsp”).forward(request, response);

jsp上、左、右导航处理

1.<html>
2.<head>
3.
<%--
4.[参考文章](http://www.cnblogs.com/muqianying/archive/2012/03/16/2400280.html)
5. -
-%>
6. <base href="
<%=basePath%>">
7. <meta charset="UTF-8">
8. <title>后台主界面</title>
9. <script type="text/javascript">
10.
</script>
11. <style type="text/css">
12. frame{
13. border:1px solid #cccccc;
14. }

15.
</style>
16.</head>
17.<frameset rows="100,*" border='0'>
18. <frame src="top" noresize="noresize" frameborder="0" scrolling="no"/>
19. <frameset cols="187,*">
20. <frame src="left" noresize="noresize" frameborder="0"/>
21. <frame src="right" frameborder="0" name="rightFrame"/>
22. </frameset>
23.</frameset>

代码测试过的没有bug,还有很多内容没有添加进去,后续还会补充,这只是最基础的代码,大牛们就不要嘲讽我了嘿嘿。

posted on 2016-06-17 18:58  沫米沫  阅读(118)  评论(0编辑  收藏  举报