Struts2 Hibernate框架技术登录界面
时间: 2024-01-09 20:05:10 浏览: 39
好的,您想了解关于Struts2和Hibernate框架技术实现的登录界面。这里提供一个简单的示例代码,供您参考。
首先需要搭建好Struts2和Hibernate的开发环境,然后创建一个登录页面login.jsp,包含用户名和密码输入框以及登录按钮。
login.jsp代码:
```html
<html>
<head>
<title>Login Page</title>
</head>
<body>
<h2>Login Page</h2>
<form action="login" method="post">
<label>Username:</label>
<input type="text" name="username" />
<br/><br/>
<label>Password:</label>
<input type="password" name="password" />
<br/><br/>
<input type="submit" value="Login" />
</form>
</body>
</html>
```
然后创建一个Action类LoginAction,用于处理登录请求。
LoginAction代码:
```java
package com.example.action;
import com.example.dao.UserDao;
import com.example.entity.User;
import com.opensymphony.xwork2.ActionSupport;
public class LoginAction extends ActionSupport {
private String username;
private String password;
public String execute() {
UserDao userDao = new UserDao();
User user = userDao.findUserByUsernameAndPassword(username, password);
if (user != null) {
return SUCCESS;
} else {
return ERROR;
}
}
// getters and setters
}
```
上述代码中,我们使用了一个UserDao类来访问数据库,根据输入的用户名和密码查询是否有匹配的用户。
UserDao代码:
```java
package com.example.dao;
import com.example.entity.User;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
public class UserDao {
private SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
public User findUserByUsernameAndPassword(String username, String password) {
Session session = sessionFactory.openSession();
Transaction tx = null;
User user = null;
try {
tx = session.beginTransaction();
user = (User) session.createQuery("from User where username = :username and password = :password")
.setParameter("username", username)
.setParameter("password", password)
.uniqueResult();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return user;
}
}
```
在上述代码中,我们使用Hibernate框架来访问数据库,根据输入的用户名和密码查询是否有匹配的用户。
最后,我们需要在struts.xml文件中配置LoginAction,使得访问/login路径时可以调用LoginAction的execute方法。
struts.xml配置代码:
```xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
<package name="default" extends="struts-default">
<action name="login" class="com.example.action.LoginAction" method="execute">
<result name="success">welcome.jsp</result>
<result name="error">login.jsp</result>
</action>
</package>
</struts>
```
在上述代码中,我们定义了一个名为login的action,它会调用LoginAction的execute方法。如果登录成功,将跳转到welcome.jsp页面,否则将继续显示login.jsp页面。
这就是一个简单的使用Struts2和Hibernate框架技术实现的登录界面的示例代码。希望能对您有所帮助。