# 第十二章:Java Web开发
## 12.5 前后端分离与安全性
### 1. 前后端分离架构概述
- **核心思想**:前端(HTML/CSS/JavaScript)与后端(Java业务逻辑)独立开发、部署和运行。
- **技术栈**:
- 前端框架:React、Vue.js、Angular
- 后端接口:RESTful API(Spring Boot)
- **优势**:
- 职责分离,提升开发效率
- 支持多终端适配(Web/移动端)
- 便于独立扩展和维护
### 2. 前后端分离的实现方式
- **API设计规范**:
- 使用JSON作为数据交换格式
- 遵循RESTful风格(GET/POST/PUT/DELETE)
- **跨域问题解决**:
- CORS(Cross-Origin Resource Sharing)配置
- Spring Boot中通过`@CrossOrigin`注解实现
- **前端代理与Mock数据**:
- 开发阶段使用Webpack代理或Postman模拟接口
### 3. Web安全性关键问题
- **常见安全威胁**:
- XSS(跨站脚本攻击)
- CSRF(跨站请求伪造)
- SQL注入
- 数据泄露(敏感信息未加密)
### 4. Java Web安全防护措施
- **Spring Security框架**:
```java
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.csrf().disable()
.authorizeRequests()
.antMatchers("/api/public/**").permitAll()
.anyRequest().authenticated()
.and()
.httpBasic();
}
}
注:实际书籍内容可补充以下扩展内容:
1. 完整代码示例(如JWT实现)
2. 安全漏洞复现与修复演示
3. 性能与安全的平衡策略
4. 合规性要求(如GDPR)