springboot的web开发
2018-03-08 16:12 用代码写出旋律 阅读(204) 评论(0) 编辑 收藏 举报这里主要简述常用的json输出、filters、property、log等
1、json输出
只需要类添加 @RestController
即可,默认类中的方法都会以json的格式返回
@RestController public class HelloWorldController { @RequestMapping("/getUser") public User getUser() { User user=new User(); user.setUserName("傻宝"); user.setPassWord("xxxx"); return user; } }
2、自定义Filters
我们常常在项目中会使用filters用于录调用日志、排除有XSS威胁的字符、执行权限验证等等。Spring Boot自动添加了OrderedCharacterEncodingFilter和HiddenHttpMethodFilter,并且我们可以自定义Filter。
主要有两个步骤:
- 实现Filter接口,实现Filter方法
- 添加@Configurationz 注解,将自定义Filter加入过滤链
代码如下:
@Configuration public class WebConfiguration { @Bean public RemoteIpFilter remoteIpFilter() { return new RemoteIpFilter(); } @Bean public FilterRegistrationBean testFilterRegistration() { FilterRegistrationBean registration = new FilterRegistrationBean(); registration.setFilter(new MyFilter()); registration.addUrlPatterns("/*"); registration.addInitParameter("paramName", "paramValue"); registration.setName("MyFilter"); registration.setOrder(1); return registration; } public class MyFilter implements Filter { @Override public void destroy() { // TODO Auto-generated method stub } @Override public void doFilter(ServletRequest srequest, ServletResponse sresponse, FilterChain filterChain) throws IOException, ServletException { // TODO Auto-generated method stub HttpServletRequest request = (HttpServletRequest) srequest; System.out.println("this is MyFilter,url :"+request.getRequestURI()); filterChain.doFilter(srequest, sresponse); } @Override public void init(FilterConfig arg0) throws ServletException { // TODO Auto-generated method stub } } }
3、自定义property
在web开发的过程中,我经常需要自定义一些配置文件,如何使用呢
配置在application.properties中
com.pangjh.enemy=傻宝
com.pangjh.teacher=香菇
自定义配置类
@Component public class NeoProperties { @Value("${com.pangjh.enemy}") private String enemy; @Value("${com.pangjh.teacher}") private String teacher; //省略getter settet方法 }
4、log配置
配置输出的地址和输出级别
logging.path=/user/local/log logging.level.com.favorites=DEBUG logging.level.org.springframework.web=INFO logging.level.org.hibernate=ERROR
path为本机的log地址,logging.level
后面可以根据包路径配置不同资源的log级别
参考
http://www.cnblogs.com/ityouknow/p/5730412.html