Struts2 + MySql 数据库实现登录
2013-03-21 00:11
190 查看
一、搭建Struts2环境
1.所需Jar包:(需要添加MySql数据库驱动)
commons-fileupload-1.2.1.jar
commons-logging-1.0.4.jar
freemarker-2.3.13.jar
mysql-connector-java-5.1.6-bin.jar
ognl-2.6.11.jar
struts2-core-2.1.6.jar
xwork-2.1.2.jar
2.配置web.xml
[/code]
[/code]
三、编写页面代码
[/code]
四、运行结果
1.所需Jar包:(需要添加MySql数据库驱动)
commons-fileupload-1.2.1.jar
commons-logging-1.0.4.jar
freemarker-2.3.13.jar
mysql-connector-java-5.1.6-bin.jar
ognl-2.6.11.jar
struts2-core-2.1.6.jar
xwork-2.1.2.jar
2.配置web.xml
<?xmlversion="1.0"encoding="gbk"?> <web-appversion="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <welcome-file-list> <welcome-file>login.jsp</welcome-file> </welcome-file-list> <!--编码--> <filter> <filter-name>encodingFilter</filter-name> <filter-class>com.login.filter.EncodingFilter</filter-class> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping><!--Struts2拦截器配置--> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter><filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app>
3.Struts.xml配置
<?xmlversion="1.0"encoding="UTF-8"?> <!DOCTYPEstrutsPUBLIC "-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.0//EN" " http://struts.apache.org/dtds/struts-2.0.dtd"><struts> <includefile="struts-default.xml"/> <constantname="struts.locale"value="zh_CN"/> <constantname="struts.i18n.encoding"value="GBK"/> <packagename="lee"namespace="/"extends="struts-default"> <actionname="login"class="com.loginAction.LoginAction"> <resultname="success">/success.jsp</result> <resultname="login">/error.jsp</result> </action> </package></struts>
4.创建数据库login,然后在数据库login中创建一个user表,该表有两个字段username和password,字段类型为varchar类型。然后再输入两条记录[code]
二、编写Java代码
[/code]
1.建立一个com.login.filter包,在包下新建一个Java类packagecom.login.filter;importjava.io.IOException;importjavax.servlet.Filter; importjavax.servlet.FilterChain; importjavax.servlet.FilterConfig; importjavax.servlet.ServletException; importjavax.servlet.ServletRequest; importjavax.servlet.ServletResponse;publicclassEncodingFilterimplementsFilter{publicvoiddestroy(){ //TODOAuto-generatedmethodstub}publicvoiddoFilter(ServletRequestarg0,ServletResponsearg1, FilterChainarg2)throwsIOException,ServletException{ //TODOAuto-generatedmethodstub arg0.setCharacterEncoding("GBK"); arg2.doFilter(arg0,arg1); }publicvoidinit(FilterConfigarg0)throwsServletException{ //TODOAuto-generatedmethodstub}}
2.创建一个com.loginAction包,在该包下新建一个Java类[code]packagecom.loginAction;importjava.sql.Connection; importjava.sql.DriverManager; importjava.sql.PreparedStatement; importjava.sql.ResultSet; importjava.sql.Statement;importcom.opensymphony.xwork2.ActionSupport;publicclassLoginActionextendsActionSupport{ privateStringusername; privateStringpassword; publicStringgetUsername(){ returnusername; } publicvoidsetUsername(Stringusername){ this.username=username; } publicStringgetPassword(){ returnpassword; } publicvoidsetPassword(Stringpassword){ this.password=password; } publicStringexecute(){ booleanflag=Login(username,password); if(flag) returnSUCCESS; else returnLOGIN; } /*验证登录是否成功*/ publicbooleanLogin(Stringusername,Stringpassword){ booleanflag=false; Connectionconn=null; ResultSetrs=null; Statementstmt=null; StringDBDriver="com.mysql.jdbc.Driver"; try{ Class.forName(DBDriver); conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/login","root","root"); stmt=conn.createStatement(); System.out.println("测试连接!"); System.out.println(username); rs=stmt.executeQuery("select*fromuserwhereusername='"+username+"'andpassword='"+password+"'"); if(rs.next()){ System.out.println("登录成功!"); flag=true; } }catch(Exceptione){ System.out.print("连接错误!"); e.printStackTrace(); } returnflag; } }
[/code]
三、编写页面代码
需要3个页面login.jsp、success.jsp和error.jsp
1.login.jsp页面代码:<%@pagelanguage="java"import="java.util.*"pageEncoding="gbk"%>
<html>
<body>
<center><h2>
<formaction="login"method="post">
用户名:<inputname="username"/><br/>
密  码:<inputname="password"/><br/>
<inputvalue="登录"type="submit"><inputtype="reset"value="取消"/>
</form>
</body>
</html>
2.success.jsp页面代码:
<%@pagelanguage="java"import="java.util.*"pageEncoding="gbk"%>
<html>
<body>
<center><h1>登录成功!</h1></center><br>
</body>
</html>
3.error.jsp页面代码:
<%@pagelanguage="java"import="java.util.*"pageEncoding="gbk"%>
<html>
<body>
<center><h1>登录失败!</h1><br>
<ahref="login.jsp">返回登录页面<a/>
</body>
</html>
[/code]
四、运行结果
运行项目,实现登录功能。
相关文章推荐
- Struts2 + MySql 数据库实现登录
- Struts2 + MySql 数据库实现登录
- ODBC + WIN32 API 访问MYSQL 数据库实现简单QQ用户注册和登录
- 利用struts2实现从数据库获取登录信息验证的应用
- ODBC + WIN32 API 访问MYSQL 数据库实现简单QQ用户注册和登录 的代码分析
- struts2连接数据库实现用户登录
- JDBC应用、控制台连MySQL接数据库实现学生管理系统的登录注册、增删改查
- 【J2EE核心开发学习笔记 010】struts2的搭建及连接数据库实现用户注册与登录
- php+MySQL实现登录时去数据库校验用户输入的登录名和密码是否正确。。。(session的用法)
- struts2连接数据库实现用户注册与登录
- CentOS7安装MySQL5.6数据库并实现远程登录
- MySql远程连接-------redis实现session单点登录时数据库连接报错
- 简单粗暴JavaWeb-第四篇:通过数据库实现用户注册、登录
- struts2实现登录后跳转回本页面
- shell脚本:实现MySQL创建数据库和删除数据库的脚本
- 用CAS实现SSO(单点登录)+数据库读取
- MYSQL远程登录权限设置 ,可以让Navicat远程连接服务器的数据库
- MySQL存储过程和触发器的实现--数据库学习笔记
- 使用JFinal框架连接数据库,实现注册、登录功能