代码
时间: 2023-07-03 21:26:05 浏览: 40
好的,以下是一个简单的Struts2+Hibernate登录界面的代码示例。
1. 登录页面(login.jsp)
```
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Login Page</title>
</head>
<body>
<h2>Login</h2>
<form action="login" method="post">
<table>
<tr>
<td>Username:</td>
<td><input type="text" name="username"/></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="password" name="password"/></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Login"/></td>
</tr>
</table>
</form>
</body>
</html>
```
2. Struts2 Action类(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.findUserByUsername(username);
if (user != null && user.getPassword().equals(password)) {
return SUCCESS;
} else {
addActionError("Invalid username or password");
return INPUT;
}
}
// getters and setters
}
```
3. Hibernate实体类(User.java)
```
package com.example.entity;
import javax.persistence.*;
@Entity
@Table(name = "user")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(name = "username")
private String username;
@Column(name = "password")
private String password;
// getters and setters
}
```
4. Hibernate DAO类(UserDao.java)
```
package com.example.dao;
import com.example.entity.User;
import com.example.util.HibernateUtil;
import org.hibernate.Session;
import org.hibernate.Transaction;
public class UserDao {
public User findUserByUsername(String username) {
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction tx = null;
User user = null;
try {
tx = session.beginTransaction();
user = (User) session.createQuery("FROM User WHERE username = :username")
.setParameter("username", username)
.uniqueResult();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return user;
}
}
```
以上是一个简单的Struts2+Hibernate登录界面的代码示例,希望能对您有所帮助。如果有任何问题,请随时提出。