您的位置:首页 > 运维架构 > Tomcat

MyEclipse+MySQL+Tomcat实现jsp登录

2014-05-17 14:05 337 查看
原文地址:http://blog.sina.com.cn/s/blog_499dced001000b5x.html

1.新建工程J2EE->web project->取名login,添加struts属性(右键单击工程名->MYEclipse->Add struts capabilites...)

2.打开struts-config.xml文件,
在Desin界面点击右键->new->Form,Action and jsp;
Usecace填写自己的工程名login;
superclass选择org.apache.struts.action.ActionForm;
在Form Properties添加两个属性,userName和password,注意password的jsp页面类型为password;
在Jsp选项中,将create jsp form打勾,finishi;

3.这是在src包中自动生成了com.yourcompany.struts.action包和com.yourcompany.struts.form包,分别包含了LoginAction.java和LoginForm.java;LoginForm.java中应该包含了get/set方法;
在WebRoot->下多出一个form包,里面含有login.jsp;后面的success.jsp和failure.jsp也建在这里面;
我们在com.yourcompany.struts.action包中新建java类,用于连接MYSql数据库,取名DBConnection.java

4.DBConnection.java的内容如下:

import java.sql.*;

public class DBConnection {

String sDBDriver = "com.mysql.jdbc.Driver";

String sConnstr = "jdbc:mysql://localhost:3306/login?useUnicode=true&characterEncoding=GBK";

//login为mysql中新建的数据库名,建库在下一步

Connection connect = null;

ResultSet rs = null;

Statement stmt = null;

public DBConnection(){

try{

Class.forName(sDBDriver);

}

catch(ClassNotFoundException ex){

System.err.println(ex.getMessage());

}

}

//连接数据库,下面的executeQuery方法中也定义了

/* public void OpenConnect(){

try{

Class.forName(sDBDriver);

this.connect = DriverManager.getConnection(sConnstr,"root","ghost");

//root为用户名,ghost为密码,下同

}catch(Exception e){

e.getMessage();

}

}

*/

public ResultSet executeQuery(String sql) {

try{

this.connect = DriverManager.getConnection(sConnstr,"root","ghost");

this.stmt = this.connect.createStatement();

rs = stmt.executeQuery(sql);

}

catch(SQLException ex){

System.err.println(ex.getMessage());

}

return rs;

}

public int executeUpdate(String sql){

int result = 0;

try{

this.connect = DriverManager.getConnection(sConnstr,"root","ghost");

}

catch(SQLException ex){

System.err.println(ex.getMessage());

}

return result;

}

//测试数据库连接

public static void main(String args[]) throws SQLException{

DBConnection db = new DBConnection();

//db.OpenConnect();

String sql = "select name from users";

ResultSet rs = db.executeQuery(sql);

while(rs.next()){

for(int i=1;i<=rs.getMetaData().getColumnCount();i++){

System.out.println(rs.getObject(i));

}

}

}

}

5.在数据库中建表,推荐使用MySQL-Front视图化建表;用sql语句的话如下:
create database login;(每行回车)
use login;

Create table users

(

id int(100)primary key,

name varchar(10),

password varchar(10)

);

insert into users values(1,'gao','lin');

之后可以用select *from users;查询一下结果;

6.添加数据库驱动

工程名上点右键->build path->configure build path->Libraries

点击Add External JARs..选择数据库驱动位置

运行DBConnection.java,没有问题的话应该出现你插入的name

7.修改LoginAction.java内容

在ActionForward execute函数中添加如下代码:

(位于LoginForm loginForm = (LoginForm) form;之后)

String userName = loginForm.getUserName();

String password = loginForm.getPassword();

String sql = "select name from users";

String sql2 = "select password from users";

DBConnection db = new DBConnection();//连接数据库

ResultSet rs = (ResultSet) db.executeQuery(sql);

ResultSet rs2 = (ResultSet) db.executeQuery(sql2);

String dbname = null;

String dbpassword = null;

while(rs.next()){//取name

for(int i=1;i<=rs.getMetaData().getColumnCount();i++){

dbname = (String) rs.getObject(i);

System.out.println("username_________________"+dbname);

}

}

while(rs2.next()){//取密码

for(int i=1;i<=rs.getMetaData().getColumnCount();i++){

dbpassword = (String) rs2.getObject(i);

System.out.println("password_________________"+dbpassword);

}

}

if(userName.equals(dbname)&&password.equals(dbpassword)){

return mapping.findForward("success");

}//success和failure还没有建立

else{

return mapping.findForward("failure");

}

------------

之前还要引入一些包

import java.sql.SQLException;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;

import org.apache.struts.action.ActionForm;

import org.apache.struts.action.ActionForward;

import org.apache.struts.action.ActionMapping;

8.建立success.jsp和failure.jsp并添加其到LoginAction的forward中;

打开struts-config.xml文件(Design)

点击左侧的J符号,再点击右侧网格页面,出现新建jsp窗口,把路径选到和login一样的form包中,名字改为success,模板选择struts1.1;

完成后出现jsp页面,在body标签中加如success的字样

同理建立failure.jsp

forward建立:

在左侧有一个Connection-Add Connection按钮,先点击一下,然后再点击右侧Login的图形,再点击右侧success.jsp图形,会弹出forward属性框,name中填写success;failure同理,填写failure

到现在基本完成,需要添加发布器Tomcat

9.在myeclipse中选择->window->preferences->Myeclipse->Application Servers->Tomcat5,选择Enable,在第一个路径中选择Tomcat的安装目录;在JDK中添加jdk的安装目录,点击ok,以后就不用再配置了。

10.发布页面

右键单击工程,选择MyEclipse->Add and Remove Project Depolyments;

点击Add按钮,在Server下拉菜单中选择Tomcat5->finishi->ok;

在MyEclipse窗口上有一个带绿色小三角和服务器的按钮,点击其下拉菜单,选择Tomcat5->start,下面会开始运行服务器

打开IE,窗口输入http://localhost:8080/login/form/login.jsp

应该会成功的!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: