Spring提供的CharacterEncoding和OpenSessionInView功能

<!--以下是由Spring提供的filter来解决Struts乱码问题 -->
<filter>
  <filter-name>encoding</filter-name>
  <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  <init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
  </init-param>
</filter>

<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 解决乱码 -->

<!-- 使用Spring解决Hiberante因session关闭导致的延迟例外问题 -->
<filter>
<filter-name>OpenSessionInViewFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>

<filter-mapping>
<filter-name>OpenSessionInViewFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 解决延迟加载例外问题 -->

登录功能Web应用程序中最基本的功能之一,Spring Boot 和 SSM框架可以很好地支持登录功能的实现。以下是一个简单的示例: 1. 首先,创建一个数据库表格来存储用户信息,包括用户名和密码。 ```sql CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(20) NOT NULL, `password` varchar(20) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4; ``` 2. 在Spring Boot项目中,创建一个控制器类来处理登录请求和响应。 ```java @RestController public class LoginController { @Autowired private UserService userService; @PostMapping("/login") public String login(@RequestParam("username") String username, @RequestParam("password") String password, HttpSession session) { User user = userService.getUser(username, password); if (user != null) { session.setAttribute("user", user); return "success"; } else { return "fail"; } } @GetMapping("/logout") public String logout(HttpSession session) { session.invalidate(); return "success"; } } ``` 3. 创建一个服务类来处理数据库操作。 ```java @Service public class UserServiceImpl implements UserService { @Autowired private UserMapper userMapper; @Override public User getUser(String username, String password) { User user = userMapper.getUser(username, password); return user; } } ``` 4. 创建一个数据访问层接口和实现类来处理数据库操作。 ```java public interface UserMapper { User getUser(@Param("username") String username, @Param("password") String password); } @Mapper @Repository public interface UserMapper { User getUser(@Param("username") String username, @Param("password") String password); } ``` 5. 最后,在Spring Boot的application.properties文件中配置数据库连接信息。 ```properties spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&useSSL=false spring.datasource.username=root spring.datasource.password=123456 spring.datasource.driver-class-name=com.mysql.jdbc.Driver ``` 通过以上步骤,我们就可以实现一个基本的登录功能。当用户输入用户名和密码时,我们将在数据库中查找该用户信息。如果用户名和密码匹配,则将该用户信息存储在Session中,并返回“success”给客户端。如果没有匹配,则返回“fail”。在用户退出登录时,我们将清除Session中的用户信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值