分享

用Structs验证登录

 Ethan的博客 2011-04-24

1.数据库连接

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class DBCon {
public static Connection getConnection()
{
   String url="jdbc:microsoft:sqlserver://localhost;databaseName=book_shop" ;
   String user="sa";
   String psw="sa";
   Connection conn=null;
   try{
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
  
   }catch(ClassNotFoundException e)
   {
    e.printStackTrace();
   }
   try{
    conn=DriverManager.getConnection(url,user,psw);
    conn.setAutoCommit(false);
    return conn;
   }catch(SQLException e)
   {
    e.printStackTrace();
   }
   return null;
}
}
2.userbean

public class User {
private String username;
private String userpsw;
public String getUsername()
{
   return username;
}
public void setUsername(String username)
{
   this.username=username;
 
}
public String getUserpsw()
{
   return userpsw;
}
public void setUserpsw(String userpsw)
{
   this.userpsw=userpsw;
}
}


3.userAction

import com.opensymphony.xwork2.ActionSupport;

public class UserAction extends ActionSupport {
private User user;
private String message;

public User getUser() {
   return user;
}

public void setUser(User user) {
   this.user = user;
}
public String execute() {
   if(UserDao.CheckLogin(this.user))
   {
    return "success";
   }
   return "failure";
}

}
4.userDao

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class UserDao {
public static boolean CheckLogin(User user) {
   /*
   * if(user.getUsername().equals("admin")
   * &&user.getUserpsw().equals("123456")) { return true; } return false;
   */
   Connection conn = null;
   conn = DBCon.getConnection();
   String userSQL = "select * from user1 where name=? and password=?";
   try {

    PreparedStatement psmt = conn.prepareStatement(userSQL);
    psmt.setString(1, user.getUsername());
    psmt.setString(2, user.getUserpsw());
    ResultSet rs = psmt.executeQuery();

    if (rs.next())
     return true;
   }

   catch (Exception e) {
    e.printStackTrace();
   } finally {
    if (conn != null) {
     try {
      conn.close();

     } catch (SQLException e) {
      e.printStackTrace();
     }
    }
   }
   return false;

}
}
5.jsp 登陆 success error

6.struts 配置

<struts>

    <constant name="struts.enable.DynamicMethodInvocation" value="false" />
    <constant name="struts.devMode" value="false" />
    <constant name="struts.ognl.allowStaticMethodAccess" value="true"></constant>
    <package name="ognl" extends="struts-default">

        <action name="login" class="sunyang.UserAction">
            <result name="success">/success.jsp</result>
            <result name="failure">/error.jsp</result>
        </action>
       

    </package>

7.web.xml

<filter>
        <filter-name>struts2</filter-name>
        <!--<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>-->
        <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>
</struts>
 

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多