Spring 注解
@Component 组件的意思
把普通pojo实例化到spring容器中 等价于在applicationContext.xml 手动配置了 <bean id="people" class="com.rzk.pojo.People"> 用Component就代替了
------
/**
* 标记这下面所有的方法只会返回字符串
*/
@RestController
-----
@Controller 会走视图解析器
/** * 标记这下面所有的方法只会返回字符串 */ @RestController 要是配置了这个注解 @Controller 和 @ResponseBody就不需要 @Controller public class UserController { @RequestMapping(value = "/j1",produces = "application/json;charset=utf-8")//解决乱码 @ResponseBody //加上它,它就不会走视图解析器,会直接返回一个字符串 这个是要配合 @Controller使用的 public String JsonDome() throws JsonProcessingException { ObjectMapper mapper = new ObjectMapper(); //创建一个对象 User user = new User("小明",1,"男"); System.out.println(user); String s = mapper.writeValueAsString(user); return s; } }
Spring常见注解
@Component[分层不明确的情况下]
@Repository() [Dao层]
@Service() [service层]
@Controller() [Action类,controller类]
@scope:指定bean作用的范围
@Autowired:指定自动装配依赖
@Qualifier:用@Autowired自动匹配时,如果有多个同类型对象则需要用该注解指定注入Bean的名称
@Resource 默认安照名称进行装配,名称可以通过name属性进行指定, 如果没有指定name属性,
当注解写在字段上时,默认取字段名进行按照名称查找,
如果注解写在setter方法上默认取属性名进行装配。
当找不到与名称匹配的bean时才按照类型进行装配。
但是需要注意的是,如果name属性一旦指定,就只会按照名称进行装配。
--待更新