//这篇博客是学习中的笔记,排版内容较乱,只写了学到的几种注释。
Spring介绍
Spring框架是 Java 平台的一个开源的全栈(Full-stack)应用程序框架和控制反转容器实现,一般被直接称为 Spring。虽然 Spring 没有直接实现任何的编程模型,但它已经在 Java 社区中广为流行,基本上完全代替了企业级JavaBeans(EJB)模型。
在使用过程中,spring容器使用配置文件或者注解的方式进行标识需要处理的java类,从而知道那些类需要当作bean注册到容器中
常见注解类
@Component:
注解可以标记在任何的类上,用来表明该类是用来执行与数据库相关的操作(即Dao对象),并支持自动处理数据库操作产生的异常
@Service:
如果一个类带了@Service注解,将自动注册到Spring容器,不需要再在applicationContext.xml文件定义bean了,类似的还包括@Component、@Repository、@Controller
例如:
@Service(“courseDAO”)
@Scope(“prototype”)
public class CourseDAOImpl extends HibernateDaoSupport implements CourseDAO{ … }
其作用就相当于applicationContext.xml文件里面的:
<bean id="courseDAO" class="com.hzhi.course.dao.CourseDAOImpl" scope="prototype"> </bean>
@Controller:
表明了一个类是作为控制器的角色而存在的。分派器(DispatcherServlet)会扫描所有注解了@Controller的类,检测其中通过@RequestMapping注解配置的方法
@RequestMapping(“路径”) 会将 HTTP 请求映射到 MVC 和 REST 控制器的处理方法上,可以在控制器类的级别和/或其中的方法的级别上使用。
如@RequestMapping(“user”)
。。。。。
@RequestMapping("/findall.do")
该处代表的路径为localhost:8080/user/findall.do
@Autowired:
它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。 通过 @Autowired的使用来消除 set ,get方法。可以根据入参寻找相应的bean。
@@RequestParam:
SpringMVC后台控制层获取参数的方式主要有两种,一种是request.getParameter(“name”),另外一种是用注解@RequestParam直接获取。
用了之后,spring会自动根据参数名字封装进入,我们可以直接拿参数名来用 。
public ModelAndView findAll(@RequestParam(defaultValue = "1") int page,@RequestParam(defaultValue = "4") int size)
defaultValue用来设置默认值。
@ResponseBody:
它表示此接口响应为纯数据,不带任何界面展示。