框架学习指南
本指南系统介绍后端开发中的框架学习知识点,适合初学者和进阶开发者。
目录
Spring Boot
- 依赖注入java
@Service public class UserService { @Autowired private UserRepository userRepository; public User getUserById(Long id) { return userRepository.findById(id).orElse(null); } } - AOPjava
@Aspect @Component public class LoggingAspect { @Before("execution(* com.example.service.*.*(..))") public void logBefore(JoinPoint joinPoint) { System.out.println("Before method: " + joinPoint.getSignature().getName()); } } - 事务管理java
@Transactional public void updateUser(User user) { userRepository.save(user); } - 安全框架java
@Configuration @EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http.authorizeRequests() .antMatchers("/public/**").permitAll() .anyRequest().authenticated() .and() .formLogin(); } } - 缓存集成java
@Cacheable(value = "users", key = "#id") public User getUserById(Long id) { return userRepository.findById(id).orElse(null); }
Django/Flask
- 路由系统python
# Django from django.urls import path from . import views urlpatterns = [ path('users/', views.user_list), path('users/<int:user_id>/', views.user_detail), ] # Flask from flask import Flask app = Flask(__name__) @app.route('/users/') def user_list(): return 'User List' @app.route('/users/<int:user_id>/') def user_detail(user_id): return f'User {user_id}' - 模板引擎python
# Django from django.shortcuts import render def user_list(request): users = User.objects.all() return render(request, 'users/list.html', {'users': users}) # Flask from flask import render_template @app.route('/users/') def user_list(): users = User.query.all() return render_template('users/list.html', users=users) - ORMpython
# Django from django.db import models class User(models.Model): name = models.CharField(max_length=100) email = models.EmailField(unique=True) # Flask-SQLAlchemy from flask_sqlalchemy import SQLAlchemy db = SQLAlchemy() class User(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(100)) email = db.Column(db.String(100), unique=True) - 中间件python
# Django class LoggingMiddleware: def __init__(self, get_response): self.get_response = get_response def __call__(self, request): print(f"Request: {request.path}") response = self.get_response(request) print(f"Response: {response.status_code}") return response # Flask @app.before_request def before_request(): print(f"Request: {request.path}") @app.after_request def after_request(response): print(f"Response: {response.status_code}") return response - 认证系统python
# Django from django.contrib.auth.decorators import login_required @login_required def user_profile(request): return render(request, 'users/profile.html') # Flask from flask_login import login_required @app.route('/profile/') @login_required def user_profile(): return render_template('users/profile.html')
学习资源
本文档持续完善中,欢迎补充与建议!