看菜鸟如何用java语言搭建SSH框架之系列六

海绵宝宝说你美得让人心碎
主题六:相关开发配置部分(核心配置文件)

讲解人:海绵宝宝

下面是开发配置部分

整个项目结构如图示:

32.png

1、在webRoot目录web-inf目录下添加如下代码:
  1. <div style="text-align: left;"><span style="line-height: 1.5;"><?xml version="1.0" encoding="UTF-8"?></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"</span></div><div style="text-align: left;"><span style="line-height: 1.5;">xmlns="http://java.sun.com/xml/ns/javaee"</span></div><div style="text-align: left;"><span style="line-height: 1.5;">xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"</span></div><div style="text-align: left;"><span style="line-height: 1.5;">version="3.0"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><display-name>SSHDemo</display-name></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><filter></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><filter-name>struts2</filter-name></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></filter></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><filter-mapping></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><filter-name>struts2</filter-name></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><url-pattern>*.action</url-pattern></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></filter-mapping></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><!-- Spring监听器 --></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><listener></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></listener></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><!--实现监听器 --></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><context-param></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><param-name>contextConfigLocation</param-name></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><param-value>/WEB-INF/applicationContext.xml</param-value></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></context-param></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></web-app></span></div>
复制代码


2、登陆页面index.jsp中添加表单表单action名为login,设置两个文本框用户名为username,密码password。

  1. <div style="text-align: left;"><span style="line-height: 1.5;"><%@ page language="java" import="java.util.*" pageEncoding="utf-8"%></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><%</span></div><div style="text-align: left;"><span style="line-height: 1.5;">String path = request.getContextPath();</span></div><div style="text-align: left;"><span style="line-height: 1.5;">String basePath = request.getScheme() + "://"</span></div><div style="text-align: left;"><span style="line-height: 1.5;">+ request.getServerName() + ":" + request.getServerPort()</span></div><div style="text-align: left;"><span style="line-height: 1.5;">+ path + "/";</span></div><div style="text-align: left;"><span style="line-height: 1.5;">%></span></div><div style="text-align: left;">
  2. </div><div style="text-align: left;"><span style="line-height: 1.5;"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><html></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><head></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><base href="<%=basePath%>"></span></div><div style="text-align: left;">
  3. </div><div style="text-align: left;"><span style="line-height: 1.5;"><title>My JSP 'index.jsp' starting page</title></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><meta http-equiv="pragma" content="no-cache"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><meta http-equiv="cache-control" content="no-cache"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><meta http-equiv="expires" content="0"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><meta http-equiv="description" content="This is my page"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><link href="style/alogin.css" rel="stylesheet" type="text/css" /></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></head></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><script type="text/javascript"></span></div><div style="text-align: left;"><span style="line-height: 1.5;">function doEnterKey() {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">if (event.keyCode == 13) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">loginBtn();</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  4. </div><div style="text-align: left;"><span style="line-height: 1.5;">function loginBtn() {</span></div><div style="text-align: left;">
  5. </div><div style="text-align: left;"><span style="line-height: 1.5;">checkData();</span></div><div style="text-align: left;"><span style="line-height: 1.5;">document.form.action = "login.action";</span></div><div style="text-align: left;"><span style="line-height: 1.5;">document.form.submit();</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  6. </div><div style="text-align: left;"><span style="line-height: 1.5;">function checkData() {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">var acct = document.getElementById("username").value;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">var pwd = document.getElementById("password").value;</span></div><div style="text-align: left;">
  7. </div><div style="text-align: left;"><span style="line-height: 1.5;">if (acct.length < 1) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">alert("请输入用户名!");</span></div><div style="text-align: left;"><span style="line-height: 1.5;">document.getElementById("account").focus();</span></div><div style="text-align: left;"><span style="line-height: 1.5;">return false;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">} else if (pwd.length < 1) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">alert("请输入密码!");</span></div><div style="text-align: left;"><span style="line-height: 1.5;">document.getElementById("password").focus();</span></div><div style="text-align: left;"><span style="line-height: 1.5;">return false;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  8. </div><div style="text-align: left;"><span style="line-height: 1.5;">return true;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;"><span style="line-height: 1.5;"></script></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><body></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><form method="post" action="" name="form"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><div class="Main"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><ul></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="top"></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="top2"></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="topA"></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="topB"><span> <img src="images/login/logo.gif"</span></div><div style="text-align: left;"><span style="line-height: 1.5;">alt="" style="" /></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></span></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="topC"></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="topD"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><ul class="login"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li><span class="left">用户名:</span> <span style="left"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><input id="username" type="text" class="txt" name="username" /></span></div><div style="text-align: left;">
  9. </div><div style="text-align: left;"><span style="line-height: 1.5;"></span></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li><span class="left">密 码:</span> <span style="left"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><input id="password" type="password" class="txt" name="password" /></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></span></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li></li></span></div><div style="text-align: left;">
  10. </div><div style="text-align: left;"><span style="line-height: 1.5;"></ul></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="topE"></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="middle_A"></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="middle_B"></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="middle_C"><span class="btn"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><img alt="" src="images/login/btnlogin.gif" onclick="loginBtn()" /></span></div><div style="text-align: left;">
  11. </div><div style="text-align: left;">
  12. </div><div style="text-align: left;"><span style="line-height: 1.5;"></span></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="middle_D"></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="bottom_A"></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><li class="bottom_B"></li></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></ul></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></div></span></div><div style="text-align: left;"><span style="line-height: 1.5;">                                          </span></div><div style="text-align: left;"><span style="line-height: 1.5;"></form></span></div><div style="text-align: left;"><span style="line-height: 1.5;"> </span></div><div style="text-align: left;"><span style="line-height: 1.5;"></body></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></html></span></div>
复制代码



3、新建LoginAction类

  1. <div style="text-align: left;"><span style="line-height: 1.5;">package com.kimi.action;</span></div><div style="text-align: left;">
  2. </div><div style="text-align: left;"><span style="line-height: 1.5;">import com.kimi.bean.Users;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">import com.kimi.service.LoginService;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">import com.opensymphony.xwork2.ActionSupport;</span></div><div style="text-align: left;">
  3. </div><div style="text-align: left;"><span style="line-height: 1.5;">public class LoginAction extends ActionSupport {</span></div><div style="text-align: left;">
  4. </div><div style="text-align: left;"><span style="line-height: 1.5;">private LoginService loginservice;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">private Users user;</span></div><div style="text-align: left;">
  5. </div><div style="text-align: left;"><span style="line-height: 1.5;">public void setLoginservice(LoginService loginservice) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">this.loginservice = loginservice;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  6. </div><div style="text-align: left;"><span style="line-height: 1.5;">private String username;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">private String password;</span></div><div style="text-align: left;">
  7. </div><div style="text-align: left;"><span style="line-height: 1.5;">public String getUsername() {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">return username;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  8. </div><div style="text-align: left;"><span style="line-height: 1.5;">public void setUsername(String username) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">this.username = username;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  9. </div><div style="text-align: left;"><span style="line-height: 1.5;">public String getPassword() {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">return password;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  10. </div><div style="text-align: left;"><span style="line-height: 1.5;">public void setPassword(String password) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">this.password = password;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  11. </div><div style="text-align: left;"><span style="line-height: 1.5;">public Users getUser() {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">return user;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  12. </div><div style="text-align: left;"><span style="line-height: 1.5;">public void setUser(Users user) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">this.user = user;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  13. </div><div style="text-align: left;"><span style="line-height: 1.5;">public String login() {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">boolean flag = true;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">try {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">flag = this.loginservice.login(username, password);</span></div><div style="text-align: left;"><span style="line-height: 1.5;">user = this.loginservice.getUserById(username);</span></div>                        <div style="text-align: left;">
  14. </div><div style="text-align: left;"><span style="line-height: 1.5;">} catch (Exception e) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">e.printStackTrace();</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;"><span style="line-height: 1.5;">if (flag) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">return "success";</span></div><div style="text-align: left;"><span style="line-height: 1.5;">} else {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">return "input";</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  15. </div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div>
复制代码


4、struts.xml中配置如下:(其中action的name必须与jsp页面表单的action名一样,class为与applicationContext.xml中action注入的id值一致,method为将在LoginAction中写的方法名,result那么input为空提交指定的返回,success为LoginAction中将要指定的返回)
  1. <div style="text-align: left;"><span style="line-height: 1.5;"><?xml version="1.0" encoding="UTF-8" ?></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><struts></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><package name="default" extends="struts-default" namespace="/"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><action name="login" class="LoginAction" method="login"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><result name="input">/index.jsp</result></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><result name="success">/main.jsp</result></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></action></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></package></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></struts></span></div>
复制代码


5、分别新建接口LoginService.java和LoginDAO.java里面添加方法

  1. <div style="text-align: left;"><span style="line-height: 1.5;">package com.kimi.dao;</span></div><div style="text-align: left;">
  2. </div><div style="text-align: left;"><span style="line-height: 1.5;">import com.kimi.bean.Users;</span></div><div style="text-align: left;">
  3. </div><div style="text-align: left;"><span style="line-height: 1.5;">public interface LoginDAO {</span></div>        <div style="text-align: left;">
  4. </div><div style="text-align: left;"><span style="line-height: 1.5;">public boolean login(String username, String password);</span></div>        <div style="text-align: left;">
  5. </div><div style="text-align: left;"><span style="line-height: 1.5;">public Users getUserById(String username);</span></div><div style="text-align: left;">
  6. </div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div>
复制代码
  1. <div style="text-align: left;"><span style="line-height: 1.5;">package com.kimi.service;</span></div><div style="text-align: left;">
  2. </div><div style="text-align: left;"><span style="line-height: 1.5;">import org.springframework.transaction.annotation.Transactional;</span></div><div style="text-align: left;">
  3. </div><div style="text-align: left;"><span style="line-height: 1.5;">import com.kimi.bean.Users;</span></div><div style="text-align: left;">
  4. </div><div style="text-align: left;"><span style="line-height: 1.5;">@Transactional</span></div><div style="text-align: left;"><span style="line-height: 1.5;">public interface LoginService {</span></div>        <div style="text-align: left;">
  5. </div><div style="text-align: left;"><span style="line-height: 1.5;">public boolean login(String username,String password); </span></div>        <div style="text-align: left;">
  6. </div><div style="text-align: left;"><span style="line-height: 1.5;">public Users getUserById(String username); </span></div><div style="text-align: left;">
  7. </div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div>
复制代码

6、分别对上述2个方法写实现类:LoginServiceImpl.java和LoginDAOImpl.java。注意实现“implements 接口”

其中,LoginDAOImpl.java中添加如下代码,注意还要继承“extends HibernateDaoSupport”,查询用户名、密码。

  1. <div style="text-align: left;"><span style="line-height: 1.5;">package com.kimi.service.impl;</span></div><div style="text-align: left;">
  2. </div><div style="text-align: left;"><span style="line-height: 1.5;">import org.springframework.stereotype.Service;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">import org.springframework.transaction.annotation.Transactional;</span></div><div style="text-align: left;">
  3. </div><div style="text-align: left;"><span style="line-height: 1.5;">import com.kimi.bean.Users;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">import com.kimi.dao.LoginDAO;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">import com.kimi.service.LoginService;</span></div><div style="text-align: left;">
  4. </div><div style="text-align: left;"><span style="line-height: 1.5;">@Transactional</span></div><div style="text-align: left;"><span style="line-height: 1.5;">@Service</span></div><div style="text-align: left;"><span style="line-height: 1.5;">public class LoginServiceImpl implements LoginService {</span></div><div style="text-align: left;">
  5. </div><div style="text-align: left;"><span style="line-height: 1.5;">LoginDAO logindao;</span></div><div style="text-align: left;">
  6. </div><div style="text-align: left;"><span style="line-height: 1.5;">public void setLogindao(LoginDAO logindao) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">this.logindao = logindao;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  7. </div><div style="text-align: left;">
  8. </div><div style="text-align: left;"><span style="line-height: 1.5;">public boolean login(String username, String password) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">return logindao.login(username, password);</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;">
  9. </div><div style="text-align: left;"><span style="line-height: 1.5;">public Users getUserById(String username){</span></div><div style="text-align: left;"><span style="line-height: 1.5;">return logindao.getUserById(username);</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div>
复制代码
  1. <div style="text-align: left;"><span style="line-height: 1.5;">package com.kimi.dao.impl;</span></div><div style="text-align: left;">
  2. </div><div style="text-align: left;"><span style="line-height: 1.5;">import java.util.List;</span></div><div style="text-align: left;">
  3. </div><div style="text-align: left;"><span style="line-height: 1.5;">import org.springframework.orm.hibernate3.support.HibernateDaoSupport;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">import org.springframework.transaction.annotation.Transactional;</span></div><div style="text-align: left;">
  4. </div><div style="text-align: left;"><span style="line-height: 1.5;">import com.kimi.bean.Users;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">import com.kimi.dao.LoginDAO;</span></div><div style="text-align: left;">
  5. </div><div style="text-align: left;"><span style="line-height: 1.5;">@Transactional</span></div><div style="text-align: left;"><span style="line-height: 1.5;">public class LoginDAOImpl extends HibernateDaoSupport implements LoginDAO {</span></div><div style="text-align: left;">
  6. </div><div style="text-align: left;"><span style="line-height: 1.5;">@SuppressWarnings("unchecked")</span></div><div style="text-align: left;"><span style="line-height: 1.5;">public boolean login(String username, String password) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">boolean flag = false;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">try {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">String queryString = "from Users where username=? and password=?";</span></div><div style="text-align: left;"><span style="line-height: 1.5;">List<Users> u = this.getHibernateTemplate().find(queryString, new Object[]{username,password});</span></div><div style="text-align: left;"><span style="line-height: 1.5;">if (u.size() > 0) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">flag = true;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;"><span style="line-height: 1.5;">} catch (Exception e) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">e.printStackTrace();</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;"><span style="line-height: 1.5;">return flag;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div>        <div style="text-align: left;">
  7. </div>        <div style="text-align: left;">
  8. </div><div style="text-align: left;"><span style="line-height: 1.5;">public Users getUserById(String username) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">Users user = new Users();</span></div><div style="text-align: left;"><span style="line-height: 1.5;">try {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">String queryString = "from Users where username=?";</span></div><div style="text-align: left;"><span style="line-height: 1.5;">List<Users> u = this.getHibernateTemplate().find(queryString, new Object[]{username});</span></div><div style="text-align: left;"><span style="line-height: 1.5;">if (u.size() > 0) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">for(int i = 0;i<u.size();i++){</span></div><div style="text-align: left;"><span style="line-height: 1.5;">user = u.get(0);</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;"><span style="line-height: 1.5;">} catch (Exception e) {</span></div><div style="text-align: left;"><span style="line-height: 1.5;">e.printStackTrace();</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;"><span style="line-height: 1.5;">return user;</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div><div style="text-align: left;"><span style="line-height: 1.5;">}</span></div>
复制代码

7、applicationContext.xml配置如下,如没有则添加
  
  1. <div style="text-align: left;"><span style="line-height: 1.5;"><?xml version="1.0" encoding="UTF-8"?></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><beans xmlns="http://www.springframework.org/schema/beans"</span></div><div style="text-align: left;"><span style="line-height: 1.5;">xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"</span></div><div style="text-align: left;"><span style="line-height: 1.5;">xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"></span></div><div style="text-align: left;">
  2. </div><div style="text-align: left;">
  3. </div><div style="text-align: left;"><span style="line-height: 1.5;"><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><property name="url" value="jdbc:mysql://localhost:3306/test"></property></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><property name="username" value="root"></property></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><property name="password" value="123456"></property></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></bean></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><bean id="sessionFactory"</span></div><div style="text-align: left;"><span style="line-height: 1.5;">class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><property name="dataSource"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><ref bean="dataSource" /></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></property></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><property name="hibernateProperties"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><props></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><prop key="hibernate.dialect"></span></div><div style="text-align: left;"><span style="line-height: 1.5;">org.hibernate.dialect.MySQLDialect</span></div><div style="text-align: left;"><span style="line-height: 1.5;"></prop></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></props></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></property></span></div><div style="text-align: left;">
  4. </div><div style="text-align: left;"><span style="line-height: 1.5;"><property name="mappingResources"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><list></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><value></span></div><div style="text-align: left;"><span style="line-height: 1.5;">com/kimi/bean/Users.hbm.xml</span></div><div style="text-align: left;"><span style="line-height: 1.5;"></value></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></list></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></property></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></bean></span></div><div style="text-align: left;">
  5. </div><div style="text-align: left;"><span style="line-height: 1.5;"><!-- DAO注入sessionFactory --></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><bean id="logind" class="com.kimi.dao.impl.LoginDAOImpl"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><!-- 注入持久化操作所需的SessionFactory --></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><property name="sessionFactory" ref="sessionFactory" /></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></bean></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><!--service注入dao id为下面的ref class为 service实现类 name="service实现类中声明的dao" --></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><bean id="logins" class="com.kimi.service.impl.LoginServiceImpl"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><property name="logindao"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><ref bean="logind" /></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></property></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></bean></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><!-- Action注入 service id="" 注入 class="action路径" name="loginservice"与LoginAction中声明的要保持一致 </span></div><div style="text-align: left;"><span style="line-height: 1.5;">ref随便取 --></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><bean id="LoginAction" class="com.kimi.action.LoginAction" scope="prototype"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><property name="loginservice" ref="logins" /></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></bean></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></beans></span></div>
复制代码

8、添加登录成功界面main.jsp
  1. <div style="text-align: left;"><span style="line-height: 1.5;"><%@ page language="java" import="java.util.*" pageEncoding="utf-8"%></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><%</span></div><div style="text-align: left;"><span style="line-height: 1.5;">String path = request.getContextPath();</span></div><div style="text-align: left;"><span style="line-height: 1.5;">String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";</span></div><div style="text-align: left;"><span style="line-height: 1.5;">%></span></div><div style="text-align: left;">
  2. </div><div style="text-align: left;"><span style="line-height: 1.5;"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><html></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><head></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><base href="<%=basePath%>"></span></div><div style="text-align: left;">
  3. </div><div style="text-align: left;"><span style="line-height: 1.5;"><title>My JSP 'main.jsp' starting page</title></span></div><div style="text-align: left;">
  4. </div><div style="text-align: left;"><span style="line-height: 1.5;"><meta http-equiv="pragma" content="no-cache"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><meta http-equiv="cache-control" content="no-cache"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><meta http-equiv="expires" content="0"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><meta http-equiv="description" content="This is my page"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><link href="style/alogin.css" rel="stylesheet" type="text/css" /></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></head></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><body></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><div class="Main"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><table align="center" cellpadding="0" border="1" width="60%" style="margin-top: 200px;margin-left: 100px;"></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><tr></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><td width="50%"><span class="left">用户名:</span></td></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><td width="50%"><span style="left"> ${user.username }</span></td></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></tr></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><tr></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><td><span class="left">密 码:</span></td></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><td><span style="left"> ${user.password }</span></td></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></tr></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><tr></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><td><span class="left">备 注:</span></td></span></div><div style="text-align: left;"><span style="line-height: 1.5;"><td><span style="left"> ${user.remark }</span></td></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></tr></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></table></span></div>                 <div style="text-align: left;">
  5. </div><div style="text-align: left;"><span style="line-height: 1.5;"></div></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></body></span></div><div style="text-align: left;"><span style="line-height: 1.5;"></html></span></div>
复制代码
9、到此,整个项目基本架构已完成,下面我们将发布部署到tomcat上面,用浏览器进行访问!

8.gif

10、最后说明一下,我是把项目发布到tomcat的ROOT下面,访问的时候不需要加项目名称;

操作如下:

9.gif



参与人数 +1 F豆 +50 理由
test + 50 很给力!

查看全部评分

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

0回帖数 1关注人数 2167浏览人数
最后回复于:2015-6-29 11:24

返回顶部 返回列表