Spring和Spring MVC(一)
2023-04-07 21:26:12
腾讯云
(资料图)
Spring是一个轻量级的开源框架,用于构建企业级应用程序。它提供了广泛的功能,包括依赖注入、AOP、事务管理、数据访问、Web开发等,使得应用程序开发变得更加简单和高效。
Spring MVC是Spring框架中的一个Web框架,它提供了MVC(Model-View-Controller)的架构模式,用于开发基于Web的应用程序。Spring MVC通过使用控制器、模型和视图来分离应用程序的不同部分,从而使得应用程序的开发更加模块化和易于维护。
本文将介绍Spring和Spring MVC的概念和用法,并提供一些示例代码。
Spring框架
Spring框架的优点
依赖注入:Spring通过依赖注入的方式来管理应用程序中的对象和组件,使得应用程序的开发更加简单和高效。AOP:Spring框架提供了AOP(Aspect Oriented Programming)的支持,使得应用程序中的横切关注点可以通过切面来实现。事务管理:Spring框架提供了事务管理的支持,使得应用程序中的事务管理变得更加简单和可靠。数据访问:Spring框架提供了对多种数据访问技术的支持,包括JDBC、ORM框架、NoSQL等。Spring框架的示例代码
以下是一个简单的Spring框架示例代码:
UserService.java
public interface UserService { public void addUser(User user); public void updateUser(User user); public void deleteUser(int userId); public User getUser(int userId);}
UserServiceImpl.java
@Servicepublic class UserServiceImpl implements UserService { @Autowired private UserDao userDao; @Override public void addUser(User user) { userDao.addUser(user); } @Override public void updateUser(User user) { userDao.updateUser(user); } @Override public void deleteUser(int userId) { userDao.deleteUser(userId); } @Override public User getUser(int userId) { return userDao.getUser(userId); }}
UserDao.java
public interface UserDao { public void addUser(User user); public void updateUser(User user); public void deleteUser(int userId); public User getUser(int userId);}
UserDaoImpl.java
@Repositorypublic class UserDaoImpl implements UserDao { @Autowired private JdbcTemplate jdbcTemplate; @Override public void addUser(User user) { jdbcTemplate.update("INSERT INTO users VALUES (?, ?)", user.getUserId(), user.getUserName()); } @Override public void updateUser(User user) { jdbcTemplate.update("UPDATE users SET user_name = ? WHERE user_id = ?", user.getUserName(), user.getUserId()); } @Override public void deleteUser(int userId) { jdbcTemplate.update("DELETE FROM users WHERE user_id = ?", userId); } @Override public User getUser(int userId) { return jdbcTemplate.queryForObject("SELECT * FROM users WHERE user_id = ?", new Object[]{userId}, new RowMapper() { @Override public User mapRow(ResultSet rs, int rowNum) throws SQLException { User user = new User(); user.setUserId(rs.getInt("user_id")); user.setUserName(rs.getString("user_name")); return user; } }); }}