idea注释模板怎么自动获取到throws的信息

在给方法加模板注释的时候怎么获取到该方法抛出的异常信息,网上有许多
注释模板的添加方法但是都没有涉及到异常的获取,想请教一下各位应该怎
么获取抛出的异常类型呢?

2个回答

图片说明

如果你的方法有throws声明,默认的时候添加注释就是有异常的啊。

wojiushiwo945you
毕小宝 回复youele: 哦。我没有设置过方法注释模板就默认带的有的。一般设置类注释模板就好了,方法注释用默认的够用。
一年多之前 回复
youele
youele * @throws: $throws$我是这样写的模板,但是获取不到呀
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Intellij idea开发工具,方法注释设置

Intellij idea开发工具,方法注释怎么设置啊。捣鼓了好久了,求指导

IDEA如何修改自动补全的代码模板

比如这个for循环的代码 ![图片说明](https://img-ask.csdn.net/upload/201904/11/1554975215_826867.png) 选择之后是在for循环后自动补全一个括号 光标停留在括号内 ![图片说明](https://img-ask.csdn.net/upload/201904/11/1554975251_57117.png) 我希望这个for循环模板修改成这样 ![图片说明](https://img-ask.csdn.net/upload/201904/11/1554975296_898380.png) 添加新的代码模板的方式我知道,但是我想修改这个默认的for循环模板 不添加新的模板

如何获取页面模板名称? 例如 模板名称:模板名称

<div class="post-text" itemprop="text"> <p>Is there any way to get the name of the page template?<br> I mean in a page template, at the beginning we write <code>Template Name: template name</code><br> I want "<code>template name</code>" by page-id</p> <p>I've tried <code>get_post_meta(get_the_ID(), '_wp_page_template', true) and get_page_template_slug($post_id)</code> but none of the function helped</p> </div>

idea 鼠标悬浮到引用的类或者方法上提示注释不完整

idea添加了类或者方法的注释,在其他类中引用该类或者方法时,鼠标悬浮,提示注释,但是提示显示不完整,求指教。 类注释如下: ![图片说明](https://img-ask.csdn.net/upload/201905/07/1557199309_437708.png) 提示如下: ![图片说明](https://img-ask.csdn.net/upload/201905/07/1557199327_347871.png) 怎么能显示完整的注释呢?

使用模版方法模式在dao里插入语句返回true,但是数据库没有加入数据是怎么回事?

![图片说明](https://img-ask.csdn.net/upload/201904/25/1556191682_326236.png)![图片说明](https://img-ask.csdn.net/upload/201904/25/1556191708_575173.png)

idea运行编写servlet进行response响应请求时获取的用户信息用System.out.println()打印,控制台不显示

idea运行编写servlet进行response响应请求时获取的用户信息用 System.out.println()打印,控制台不显示! public class LoginServlet extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //设置响应编码格式 resp.setContentType("text/html;charset=utf-8"); //获取请求信息 String uname = req.getParameter("uname"); String upass = req.getParameter("pwd"); ## ** System.out.println(uname+":"+upass);** //处理请求信息 //响应处理结果 } }

Intellij idea2017怎么配置urlpatterns

这是网页代码 ``` <%-- Created by IntelliJ IDEA. User: Limbo Date: 2017/8/21 Time: 9:55 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <form action="/SV" method="post"> 输入姓名<input type="text" id="username"> 输入密码<input type="password" name="" id="userpsd"> <input type="submit" value="提交"> </form> </body> </html> ``` 这是Servlet代码 ``` package com.limbo.servlet; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; @WebServlet(name = "MyServlet",urlPatterns = "/SV") public class MyServlet extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { super.service(req, resp); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("这是Servlet"); response.setContentType("text/htmml;charset=utf-8"); // PrintWriter out = response.getWriter(); // out.println(",欢迎登陆成功</h2>"); // response.setCharacterEncoding("utf-8"); String username = request.getParameter("username"); String psd = request.getParameter("userpsd"); if (username != null && !"".equals(username) && psd != null && !"".equals(psd)) { if (username.equals("admin") && psd.equals("123")) { PrintWriter out = response.getWriter(); out.print("<h2>" + username); out.println(",欢迎登陆成功</h2>"); } else { // response.sendRedirect("index.jsp"); PrintWriter out = response.getWriter(); out.print("<h2>" + username); out.println(",欢迎登陆成功</h2>"); } } } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } } ``` 输入名字密码后就是空白页面,地址栏地址会变成localhost:8080/SV

奇怪的 throws exception

<br />org.springframework.mail.MailSender <br /><pre name="code" class="java"> void send(SimpleMailMessage simpleMessage) throws MailException; </pre> <br /> <br /> <br /><pre name="code" class="java"> private static JavaMailSender mailSender = null; mailSender = (JavaMailSender) xxx; public static void sendMail(SimpleMailMessage msg) { mailSender.send(msg); } </pre> <br /> <br />为什么sendMail不需要catch exception&nbsp; 或者 throw出去? <br /> <br />

zuul+oauth2 怎么获取当前用户信息,为什么现在只能获取用户名?

springcloud + zuul + oauth2 ## 认证服务器 ``` @Configuration @EnableAuthorizationServer public class OAuth2AuthServerConfig extends AuthorizationServerConfigurerAdapter{ @Autowired public CustomWebResponseExceptionTranslator customWebResponseExceptionTranslator; @Autowired private UserDetailsService userDetailsService; @Autowired private AuthenticationManager authenticationManager; @Autowired private DataSource dataSource; @Bean public TokenStore tokenStore(){ return new JwtTokenStore(jwtTokenEnhancer()); } @Bean public JwtAccessTokenConverter jwtTokenEnhancer() { JwtAccessTokenConverter converter = new JwtAccessTokenConverter(); KeyStoreKeyFactory keyStoreKeyFactory = new KeyStoreKeyFactory(new ClassPathResource("weijie.key"),"weijie".toCharArray()); converter.setKeyPair(keyStoreKeyFactory.getKeyPair("weijie")); return converter; } /** * 用户合法性校验 * @param endpoints * @throws Exception */ @Override public void configure(AuthorizationServerEndpointsConfigurer endpoints) throws Exception { endpoints.exceptionTranslator(customWebResponseExceptionTranslator) .userDetailsService(userDetailsService) .tokenStore(tokenStore()) .tokenEnhancer(jwtTokenEnhancer()) .authenticationManager(authenticationManager); } /** * 配置客户端应用详细信息 * @param clients * @throws Exception */ @Override public void configure(ClientDetailsServiceConfigurer clients) throws Exception { clients.jdbc(dataSource); } @Override public void configure(AuthorizationServerSecurityConfigurer security) throws Exception { security.tokenKeyAccess("isAuthenticated()") .checkTokenAccess("isAuthenticated()"); } } ``` ``` @Component public class UserDetailsServiceImpl implements UserDetailsService { @Autowired private LoginUserMapper loginUserMapper; //这就是构建用户所必需的的三个属性。用户名、密码、权限、 @Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { LoginUser loginUser = loginUserMapper.selectOne(new QueryWrapper<LoginUser>().eq("username",username)); return loginUser; } } ``` ## 资源服务器 ``` @GetMapping("role") public Result getRoleMenus(@AuthenticationPrincipal String username){ List<Menu> menus = menuService.getRoleMenus(username); return Result.success(menus); } ``` 为什么SecurityContextHolder.getContext().getAuthentication().getPrincipal();和@AuthenticationPrincipal 注解都只能获取当前用户的用户名? 怎么配置可以获取 用户ID等信息呢?

关于java throws语句的问题

下面两个类中分别有一个throws方法,在第一个类中的throws方法中没有声明throws抛出异常,在第二个声明了throws抛出异常,执行两个类,结果相同。而第二个类中throws方法声明的throws抛出异常有什么用啊,这样写不是麻烦了吗,还不如第一个简便啊?![图片](https://img-ask.csdn.net/upload/201511/05/1446683923_255555.png)

throws sqlexception和 throws Exception有啥区别?

throws sqlexception和 throws Exception有啥区别?还有在安卓adt的eclipse中,快速定位错误的快捷键是啥?我输入ctrl+.或者ctrl+1没有反应~~~

springsecurity + aop 如何在切点中获取当前用户信息

security实现用户认证,做了一个切面通过注释来给方法加日志打印,现在想要在日志打印出每次调用方法的当前用户,在切面中直接使用 ``` SecurityContextHolder.getContext().getAuthentication() ``` 获取不到对象 在security认证成功的回调方法里我是能正常获得信息的,下面是代码: AjaxAuthenticationSuccessHandler.java ``` @Component public class AjaxAuthenticationSuccessHandler implements AuthenticationSuccessHandler { ....//省略其他代码 public void onAuthenticationSuccess(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Authentication authentication) throws IOException, ServletException { httpServletResponse.setContentType("application/json;charset=utf-8"); SysUser userDetails = (SysUser)authentication.getPrincipal(); //这个userDetails是有想要的内容的 ....//省略其他代码 } } ``` WebSecurityConfig.java ``` @Configuration public class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Autowired SecurityService securityService; @Autowired UrlFilterInvocationSecurityMetadataSource urlFilterInvocationSecurityMetadataSource; @Autowired UrlAccessDecisionManager urlAccessDecisionManager; @Autowired AuthenticationAccessDeniedHandler authenticationAccessDeniedHandler; @Autowired AjaxAuthenticationSuccessHandler authenticationSuccessHandler; // 登录成功返回的 JSON 格式数据给前端(否则为 html) @Autowired AjaxAuthenticationFailureHandler authenticationFailureHandler; // 登录失败返回的 JSON 格式数据给前端(否则为 html) @Autowired AjaxAuthenticationEntryPoint authenticationEntryPoint; @Autowired ValidateCodeFilter validateCodeFilter; @Override protected void configure(AuthenticationManagerBuilder auth) throws Exception { auth.userDetailsService(securityService).passwordEncoder(new MyPasswordEncoder()); } @Override public void configure(WebSecurity web) throws Exception { //设置哪些路径不进行权限控制,添加**允许所有地址可访问 web.ignoring().antMatchers("/console","/index**","/resources/**","/druid/**"); } @Override protected void configure(HttpSecurity http) throws Exception { http.addFilterBefore(validateCodeFilter,UsernamePasswordAuthenticationFilter.class). csrf().disable() .httpBasic().authenticationEntryPoint(authenticationEntryPoint) .and() .formLogin() .usernameParameter("username") .passwordParameter("password") .failureHandler(authenticationFailureHandler) .successHandler(authenticationSuccessHandler) .permitAll() .and() .logout() .permitAll() .and() .exceptionHandling() .accessDeniedHandler(authenticationAccessDeniedHandler) .and() .authorizeRequests() .anyRequest() .authenticated() .withObjectPostProcessor(new ObjectPostProcessor<FilterSecurityInterceptor>() { @Override public <O extends FilterSecurityInterceptor> O postProcess(O o) { o.setSecurityMetadataSource(urlFilterInvocationSecurityMetadataSource); o.setAccessDecisionManager(urlAccessDecisionManager); return o; } }); } } ``` MyLogAspect.java ``` @Aspect @Component public class MyLogAspect { private final Logger logger = LoggerFactory.getLogger(MyLogAspect.class); //定义切点 @Pointcut("@annotation(xxx)") public void logPointCut() { } /** * 在方法调用之前调用通知 * * @param joinPoint 切点 */ @Before("logPointCut()") public void doBefore(JoinPoint joinPoint) { RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes(); HttpServletRequest request = ((ServletRequestAttributes) requestAttributes).getRequest(); System.out.println(SecurityContextHolder.getContext().getAuthentication()); //输出为null } } ``` 网上查资料好像是说在认证完之后会清空SecurityContextHolder?那我在其他的类里面要获取当前用户该怎么办呢?得自己写session存吗?感觉应该是哪里没搞对,有大佬指教一下吗? ============================================== 找到问题了,是在security的过滤器中选择不进行权限控制的路径里把我测试用的访问路径也加进去了,所以导致拿不到用户。参考帖子:https://blog.csdn.net/u012702547/article/details/105237938 WebSecurityConfig文件中的 ``` @Override public void configure(WebSecurity web) throws Exception { //设置哪些路径不进行权限控制,添加**允许所有地址可访问 web.ignoring().antMatchers("/console","/index**","/resources/**","/druid/**"); } ``` 如果要拿到当前用户,接口地址就不能在这里面,可找死我了~

新手上路,IDEA写的jsp跳转到servlet出现404错误,大佬救救我吧?

jsp代码 <%@ page contentType="text/html;charset=UTF-8" language="java" %> <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8"/> <meta http-equiv="X-UA-Compatible" content="IE=edge"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>首页</title> <!-- 1. 导入CSS的全局样式 --> <link href="css/bootstrap.min.css" rel="stylesheet"> <!-- 2. jQuery导入,建议使用1.9以上的版本 --> <script src="js/jquery-2.1.0.min.js"></script> <!-- 3. 导入bootstrap的js文件 --> <script src="js/bootstrap.min.js"></script> <script type="text/javascript"> </script> </head> <body> <div>${user.name},欢迎您</div> <div align="center"> <a href="${pageContext.request.contextPath}/userListServlet" style="text-decoration:none;font-size:33px">查询所有用户信息 </a> </div> </body> </html> servlet代码 package cn.itcast.web.servlet; import cn.itcast.domain.User; import cn.itcast.service.UserService; import cn.itcast.service.impl.UserServiceImpl; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.List; @WebServlet(name = "userListServlet") public class UserListServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.调用UserService完成查询 UserService service = new UserServiceImpl(); List<User> users = service.findAll(); //2.将list存入request域 request.setAttribute("users",users); //3.转发到list.jsp request.getRequestDispatcher("/list.jsp").forward(request,response); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } } jsp页面可以显示,但是跳转到servlet页面出错

在idea中jsp涉及到页面跳转就404的问题,求大佬支招!!!!

psp代码:<%-- Created by IntelliJ IDEA. User: HASEE Date: 2019/11/24 Time: 22:22 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8"isELIgnored="false" language="java" %> <html> <head> <title>Title</title> </head> <body> ${requestScope.hai} <form action="/Loginservlet" method="post" value="%{param.name}"> username:<input type="next" name="name"><br/> password:<input type="password" name="password"><br/> <input type="submit" name="tijiao"> </form> </body> </html> servlet 代码: package cn.kgc.servlet; import cn.kgc.entity.utils.User; import cn.kgc.service.UserService; import cn.kgc.service.inpl.Userservicepml; import javax.jws.soap.SOAPBinding; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; public class Loginservlet extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //获取页面输入的用户名和密码 String name = req.getParameter("name"); String password = req.getParameter("password"); //调用service中登录的方法 UserService userService=new Userservicepml(); User user=new User(null,"name","password"); User login = userService.login(user); if (login!=null){ //3.登录成功跳转到succcess.jsp // resp.sendRedirect("/success.jsp"); req.setAttribute("name",name); req.getRequestDispatcher("/success.jsp"); }else { //4登录失败跳转到login.jsp // resp.sendRedirect("/login.jsp"); req.setAttribute("hai","用户名或密码错误"); req.getRequestDispatcher("login.jsp").forward(req,resp); } } } servlet 配置文件(web.xml): <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>Loginservlet</servlet-name> <servlet-class>cn.kgc.servlet.Loginservlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>Loginservlet</servlet-name> <url-pattern>/Loginservlet</url-pattern> </servlet-mapping> <servlet> <servlet-name>loginout</servlet-name> <servlet-class>cn.kgc.servlet.loginout</servlet-class> </servlet> <servlet-mapping> <servlet-name>loginout</servlet-name> <url-pattern>/loginout</url-pattern> </servlet-mapping> </web-app>

idea创建maven项目提示添加依赖

pom.xml中添加了运行servlet所需的依赖 ``` <dependencies> <dependency> <groupId>javax.servlet</groupId> <artifactId>jsp-api</artifactId> <version>2.0</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <scope>provided</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> </dependencies> ``` 但是具体的servlet无法自动导包,仍然提示添加依赖 ![图片说明](https://img-ask.csdn.net/upload/201907/12/1562925352_504506.png) ``` package cn.itheima.setvlet; import java.io.IOException; public class MyServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } } ``` 找不到解决方法,搞得我怀疑人生,跪求大哥指点

idea测试出错,一直报xml文件错误

写了一个实验类,运行结果。出现错误信息如下代码,请大神帮忙指导一下哪里错误了 ``` Exception in thread "main" org.apache.ibatis.exceptions.PersistenceException: ### Error building SqlSession. ### The error may exist in SoneMybatis/SonMybatis.xml ### Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource SoneMybatis/SonMybatis.xml at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:26) at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:82) at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:66) at com.cwj.Text.Text.Text1(Text.java:42) at com.cwj.Text.Text.main(Text.java:34) Caused by: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource SoneMybatis/SonMybatis.xml at org.apache.ibatis.builder.xml.XMLConfigBuilder.parseConfiguration(XMLConfigBuilder.java:109) at org.apache.ibatis.builder.xml.XMLConfigBuilder.parse(XMLConfigBuilder.java:92) at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:80) ... 3 more Caused by: java.io.IOException: Could not find resource SoneMybatis/SonMybatis.xml at org.apache.ibatis.io.Resources.getResourceAsStream(Resources.java:110) at org.apache.ibatis.io.Resources.getResourceAsStream(Resources.java:97) at org.apache.ibatis.builder.xml.XMLConfigBuilder.mapperElement(XMLConfigBuilder.java:320) at org.apache.ibatis.builder.xml.XMLConfigBuilder.parseConfiguration(XMLConfigBuilder.java:107) ... 5 more `` 测试类: /** * Copyright (C), 2015-2019, XXX有限公司 * FileName: Text * Author: 50427 * Date: 2019/4/25 21:00 * Description: * History: * <author> <time> <version> <desc> * 作者姓名 修改时间 版本号 描述 */ package com.cwj.Text; import com.cwj.User.User; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import org.apache.logging.log4j.core.helpers.SystemClock; import java.io.IOException; import java.io.InputStream; /** * 〈一句话功能简述〉<br> * 〈〉 * * @author 50427 * @create 2019/4/25 * @since 1.0.0 */ public class Text { public static void main(String[] args) { try { Text1(); } catch (IOException e) { e.printStackTrace(); } } private static void Text1() throws IOException { InputStream input = Resources.getResourceAsStream("Mybatis.xml"); SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(input); SqlSession session =factory.openSession(); User user=session.selectOne("Mybatis.xml",1); System.out.print(user); session.commit(); } } 映射xml文件: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!-- namespace:命名空间,它的作用就是对SQL进行分类化管理,可以理解为SQL隔离 注意:使用mapper代理开发时,namespace有特殊且重要的作用 --> <mapper namespace="test"> <!-- [id]:statement的id,要求在命名空间内唯一 [parameterType]:入参的java类型 [resultType]:查询出的单条结果集对应的java类型 [#{}]: 表示一个占位符? [#{id}]:表示该占位符待接收参数的名称为id。注意:如果参数为简单类型时,#{}里面的参数名称可以是任意定义 --> <!-- id查询--> <select id="findUserById" parameterType="int" resultType="com.cwj.User.User"> SELECT * FROM u_login WHERE uid = #{uid} </select> <!-- 模糊查询--> <select id="findUserBy" parameterType="String" resultType="com.cwj.User.User"> SELECT * FROM u_login WHERE uname like %${value}% </select> </mapper> 全局文件xml: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <!-- 配置mybatis的环境信息 --> <environments default="development"> <environment id="development"> <!-- 配置JDBC事务控制,由mybatis进行管理 --> <transactionManager type="JDBC"></transactionManager> <!-- 配置数据源,采用dbcp连接池 --> <dataSource type="POOLED"> <property name="driver" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/> <property name="url" value="jdbc:sqlserver://localhost:1433;DatabaseName=Login?useUnicode=true&amp;characterEncoding=utf-8"/> <property name="username" value="sa"/> <property name="password" value="123456"/> </dataSource> </environment> </environments> <mappers> <mapper resource="SoneMybatis/Soner.xml"></mapper> </mappers> </configuration> log4j.properties文件: # Global logging configuration log4j.rootLogger=DEBUG, stdout # Console output... log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n ![图片说明]([图片](https://img-ask.csdn.net/upload/201904/26/1556265572_660705.png "") https://img-ask.csdn.net/upload/201904/26/1556265572_660705.png) ![图片说明](https://img-ask.csdn.net/upload/201904/26/1556265668_459453.png) ![图片说明](https://img-ask.csdn.net/upload/201904/26/1556265677_469377.png) ![图片说明](https://img-ask.csdn.net/upload/201904/26/1556265693_482838.png) ![图片说明](https://img-ask.csdn.net/upload/201904/26/1556265699_520514.png) ![图片说明](https://img-ask.csdn.net/upload/201904/26/1556265706_599402.png) ![图片说明](https://img-ask.csdn.net/upload/201904/26/1556265793_940721.png)

参数上使用自定义注解在aop中无法获取到该参数

目标方法: ``` @ApiOperation(value="testRedis") @RequestMapping(value = "/testRedis", method = RequestMethod.GET) @DropDownSearch(key = "'bdt0010_'+#projectId") public Object redisTest(String projectId, @SearchKeyWord String value){ System.out.printf(""); return BaseResult.successResultCreate("test",bdt0010Service.redisTest(projectId)); } ``` 其中@DropDownSearch为自定义方法注解 @SearchKeyWord为自定义参数注解 在Aspect使用环绕通知: ``` public Object doAfterClearRedisCache(ProceedingJoinPoint joinPoint) throws Throwable { //Class<?> targetClass = joinPoint.getTarget().getClass(); //获得参数列表 Object[] args = joinPoint.getArgs(); } ``` getArgs方法无法获取被@SearchKeyWord标记的参数对象。 此前未使用@SearchKeyWord注解时一切均正常。 请问是什么问题?

什么情况下使用throws Exception?

一般在公司写程序的时候,都会用try catch包起来,如果发生异常执行一些日志记录的操作 那么throws一般在什么情况下使用?

cas与shiro整合,通过trick获取不到用户信息

# 配置说明: 服务端:4.0 tomcat:8 JDK:1.8 协议:由于领导要求,所以关闭了https协议,也没有使用证书(不知道有木有影响) =========================================== 客户端:spring boot + shiro(所以要与cas整合) JDK:1.7 =========================================== 由于一直报错,验证不通过,所以我下载了源码,进入到源码中,还是不理解问题,所以问问大家。希望可以给个思路,谢谢。 首先,在访问客户端时,重定向到了服务端的登录界面 ![图片说明](https://img-ask.csdn.net/upload/201705/11/1494492842_446116.jpg) 输入完用户名和密码后,客户端被casFilter拦截,进入到CasFilter中的onAccessDenied(ServletRequest request, ServletResponse response){return executeLogin(request, response);} 进入到executeLogin(request, response)的实现方法中,进入到AuthenticatingFilter实现的executeLogin方法中,相应代码如下: ``` protected boolean executeLogin(ServletRequest request, ServletResponse response) throws Exception { AuthenticationToken token = createToken(request, response); if (token == null) { String msg = "createToken method implementation returned null. A valid non-null AuthenticationToken " + "must be created in order to execute a login attempt."; throw new IllegalStateException(msg); } try { Subject subject = getSubject(request, response); subject.login(token); return onLoginSuccess(token, subject, request, response); } catch (AuthenticationException e) { return onLoginFailure(token, e, request, response); } } ``` 往下走,首先创建一个CasToken,只有一个参数trick(ST-1-1ZAXXNbLLKfsbB1h5Glz-cas01.example.org),代码如下: ``` protected AuthenticationToken createToken(ServletRequest request, ServletResponse response) throws Exception { HttpServletRequest httpRequest = (HttpServletRequest) request; String ticket = httpRequest.getParameter(TICKET_PARAMETER); return new CasToken(ticket); } ``` 下一步,根据token开始执行subject.login(token); 走到这一步,我不知道我的客户端配置有没有问题,继续往下看,在DelegatingSubject中实现的login方法: ``` public void login(AuthenticationToken token) throws AuthenticationException { clearRunAsIdentities(); Subject subject = securityManager.**login(this, token)**; PrincipalCollection principals; String host = null; ``` 继续securityManager.login(this, token);进入到类DefaultSecurityManager实现方法中: ``` public Subject login(Subject subject, AuthenticationToken token) throws AuthenticationException { AuthenticationInfo info; try { info = **authenticate(token)**; } catch (AuthenticationException ae) { try { onFailedLogin(token, ae, subject); } catch (Exception e) { if (log.isInfoEnabled()) { log.info("onFailedLogin method threw an " + "exception. Logging and propagating original AuthenticationException.", e); } } throw ae; //propagate } ``` 继续看:info = authenticate(token); 进入到类AuthenticatingSecurityManager实现的方法中: ``` public AuthenticationInfo authenticate(AuthenticationToken token) throws AuthenticationException { return this.authenticator.**authenticate(token)**; } ``` 继续进入实现方法中,在类AbstractAuthenticator中实现的代码如下: ``` public final AuthenticationInfo authenticate(AuthenticationToken token) throws AuthenticationException { if (token == null) { throw new IllegalArgumentException("Method argumet (authentication token) cannot be null."); } log.trace("Authentication attempt received for token [{}]", token); AuthenticationInfo info; try { info = **doAuthenticate(token)**; if (info == null) { String msg = "No account information found for authentication token [" + token + "] by this " + "Authenticator instance. Please check that it is configured correctly."; throw new AuthenticationException(msg); } } catch (Throwable t) { ``` 继续进入到doAuthenticate(token)的实现类ModularRealmAuthenticator中,代码如下,大家注意看我加粗的地方, realm.supports(token) : ``` protected AuthenticationInfo doSingleRealmAuthentication(Realm realm, AuthenticationToken token) { if (!**realm.supports(token)**) { String msg = "Realm [" + realm + "] does not support authentication token [" + token + "]. Please ensure that the appropriate Realm implementation is " + "configured correctly or that the realm accepts AuthenticationTokens of this type."; throw new UnsupportedTokenException(msg); } AuthenticationInfo info = realm.getAuthenticationInfo(token); if (info == null) { String msg = "Realm [" + realm + "] was unable to find account data for the " + "submitted AuthenticationToken [" + token + "]."; throw new UnknownAccountException(msg); } return info; } ``` 继续进入到 realm.supports(token) ;实现类AuthenticatingRealm,方法如下: ``` public boolean supports(AuthenticationToken token) { return token != null && getAuthenticationTokenClass().isAssignableFrom(token.getClass()); } ``` 问题就出在这里,在上面的supports方法中两个class对比一直不匹配, 由于CasRealmh中: ``` public CasRealm() { setAuthenticationTokenClass(CasToken.class); } ``` 而我们之前在刚进入CasFilter中时根据trick新生成的Token也是CasToken。一下图片是我调试时截取的: ![图片说明](https://img-ask.csdn.net/upload/201705/11/1494494629_171082.jpg) ![图片说明](https://img-ask.csdn.net/upload/201705/11/1494494668_486156.jpg) 根据调试结果显示两个class是一模一样的,可是偏偏返回false, 最后在类ModularRealmAuthenticator的方法中报错: ``` protected AuthenticationInfo doSingleRealmAuthentication(Realm realm, AuthenticationToken token) { if (!realm.supports(token)) { **String msg = "Realm [" + realm + "] does not support authentication token [" + token + "]. Please ensure that the appropriate Realm implementation is " + "configured correctly or that the realm accepts AuthenticationTokens of this type."; throw new UnsupportedTokenException(msg);** } AuthenticationInfo info = realm.getAuthenticationInfo(token); if (info == null) { String msg = "Realm [" + realm + "] was unable to find account data for the " + "submitted AuthenticationToken [" + token + "]."; throw new UnknownAccountException(msg); } return info; } ``` 报错内容: ``` String msg = "Realm [" + realm + "] does not support authentication token [" + token + "]. Please ensure that the appropriate Realm implementation is " + "configured correctly or that the realm accepts AuthenticationTokens of this type."; ``` 这里困了我好久了, 实在是不知道怎么解决了, 希望大家可以帮我看看。

Python数据挖掘简易入门

&nbsp; &nbsp; &nbsp; &nbsp; 本课程为Python数据挖掘方向的入门课程,课程主要以真实数据为基础,详细介绍数据挖掘入门的流程和使用Python实现pandas与numpy在数据挖掘方向的运用,并深入学习如何运用scikit-learn调用常用的数据挖掘算法解决数据挖掘问题,为进一步深入学习数据挖掘打下扎实的基础。

HoloLens2开发入门教程

本课程为HoloLens2开发入门教程,讲解部署开发环境,安装VS2019,Unity版本,Windows SDK,创建Unity项目,讲解如何使用MRTK,编辑器模拟手势交互,打包VS工程并编译部署应用到HoloLens上等。

2019 Python开发者日-培训

本次活动将秉承“只讲技术,拒绝空谈”的理念,邀请十余位身处一线的Python技术专家,重点围绕Web开发、自动化运维、数据分析、人工智能等技术模块,分享真实生产环境中使用Python应对IT挑战的真知灼见。此外,针对不同层次的开发者,大会还安排了深度培训实操环节,为开发者们带来更多深度实战的机会。

Only老K说-爬取妹子图片(简单入门)

安装第三方请求库 requests 被网站禁止了访问 原因是我们是Python过来的 重新给一段 可能还是存在用不了,使用网页的 编写代码 上面注意看匹配内容 User-Agent:请求对象 AppleWebKit:请求内核 Chrome浏览器 //请求网页 import requests import re //正则表达式 就是去不规则的网页里面提取有规律的信息 headers = { 'User-Agent':'存放浏览器里面的' } response = requests.get

2020_五一数学建模_C题_整理后的数据.zip

该数据是我的程序读取的数据,仅供参考,问题的解决方案:https://blog.csdn.net/qq_41228463/article/details/105993051

R语言入门基础

本课程旨在帮助学习者快速入门R语言: 课程系统详细地介绍了使用R语言进行数据处理的基本思路和方法。 课程能够帮助初学者快速入门数据处理。 课程通过大量的案例详细地介绍了如何使用R语言进行数据分析和处理 课程操作实际案例教学,通过编写代码演示R语言的基本使用方法和技巧

人才招聘系统PHP+MySQL源码

PHP 5.0及以上 + MySQL 5.0及以上 开发的人才招聘系统完全可运行源码,按照操作说明简单配置即可运行。学习PHPWEB应用的完整系统程序源码。

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

python可视化分析(matplotlib、seaborn、ggplot2)

python可视化分析总结(matplotlib、seaborn、ggplot)一、matplotlib库1、基本绘图命令3、图形参数设置4、特殊统计图的绘制4.1 数学函数图4.2 气泡图4.1 三维曲面图二、seaborn库1、常用统计图1.1 箱线图1.2 小提琴图1.3 点图1.4 条图与计数图1.5 分组图1.6 概率分布图2、联合图3、配对图三、ggplot库1、图层画法+常用图形2、快速绘图 一、matplotlib库 1、基本绘图命令 import matplotlib.pyplot as

Vue.js 2.0之全家桶系列视频课程

基于新的Vue.js 2.3版本, 目前新全的Vue.js教学视频,让你少走弯路,直达技术前沿! 1. 包含Vue.js全家桶(vue.js、vue-router、axios、vuex、vue-cli、webpack、ElementUI等) 2. 采用笔记+代码案例的形式讲解,通俗易懂

初级玩转Linux+Ubuntu(嵌入式开发基础课程)

课程主要面向嵌入式Linux初学者、工程师、学生 主要从一下几方面进行讲解: 1.linux学习路线、基本命令、高级命令 2.shell、vi及vim入门讲解 3.软件安装下载、NFS、Samba、FTP等服务器配置及使用

人工智能-计算机视觉实战之路(必备算法+深度学习+项目实战)

系列课程主要分为3大阶段:(1)首先掌握计算机视觉必备算法原理,结合Opencv进行学习与练手,通过实际视项目进行案例应用展示。(2)进军当下最火的深度学习进行视觉任务实战,掌握深度学习中必备算法原理与网络模型架构。(3)结合经典深度学习框架与实战项目进行实战,基于真实数据集展开业务分析与建模实战。整体风格通俗易懂,项目驱动学习与就业面试。 建议同学们按照下列顺序来进行学习:1.Python入门视频课程 2.Opencv计算机视觉实战(Python版) 3.深度学习框架-PyTorch实战/人工智能框架实战精讲:Keras项目 4.Python-深度学习-物体检测实战 5.后续实战课程按照自己喜好选择就可以

【大总结2】大学两年,写了这篇几十万字的干货总结

本文十天后设置为粉丝可见,喜欢的提前关注 不要白嫖请点赞 不要白嫖请点赞 不要白嫖请点赞 文中提到的书我都有电子版,可以评论邮箱发给你。 文中提到的书我都有电子版,可以评论邮箱发给你。 文中提到的书我都有电子版,可以评论邮箱发给你。 本篇文章应该算是Java后端开发技术栈的,但是大部分是基础知识,所以我觉得对任何方向都是有用的。 1、数据结构 数据结构是计算机存储、...

lena全身原图(非256*256版本,而是全身原图)

lena全身原图(非256*256版本,而是全身原图) lena原图很有意思,我们通常所用的256*256图片是在lena原图上截取了头部部分的256*256正方形得到的. 原图是花花公子杂志上的一个

【项目实战】 图书信息管理系统(Maven,mybatis)(第一个自己独立完成的项目)

《程序设计综合训练实践报告》 此项目为图书信息管理系统,是一个采用了mysql+mybatis框架+java编写的maven项目

图书管理系统(Java + Mysql)我的第一个完全自己做的实训项目

图书管理系统 Java + MySQL 完整实训代码,MVC三层架构组织,包含所有用到的图片资源以及数据库文件,大三上学期实训,注释很详细,按照阿里巴巴Java编程规范编写

Python入门视频精讲

Python入门视频培训课程以通俗易懂的方式讲解Python核心技术,Python基础,Python入门。适合初学者的教程,让你少走弯路! 课程内容包括:1.Python简介和安装 、2.第一个Python程序、PyCharm的使用 、3.Python基础、4.函数、5.高级特性、6.面向对象、7.模块、8.异常处理和IO操作、9.访问数据库MySQL。教学全程采用笔记+代码案例的形式讲解,通俗易懂!!!

20行代码教你用python给证件照换底色

20行代码教你用python给证件照换底色

2018年全国大学生计算机技能应用大赛决赛 大题

2018年全国大学生计算机技能应用大赛决赛大题,程序填空和程序设计(侵删)

MySQL数据库从入门到实战应用

限时福利1:购课进答疑群专享柳峰(刘运强)老师答疑服务 限时福利2:购课后添加学习助手(微信号:csdn590),按消息提示即可领取编程大礼包! 为什么说每一个程序员都应该学习MySQL? 根据《2019-2020年中国开发者调查报告》显示,超83%的开发者都在使用MySQL数据库。 使用量大同时,掌握MySQL早已是运维、DBA的必备技能,甚至部分IT开发岗位也要求对数据库使用和原理有深入的了解和掌握。 学习编程,你可能会犹豫选择 C++ 还是 Java;入门数据科学,你可能会纠结于选择 Python 还是 R;但无论如何, MySQL 都是 IT 从业人员不可或缺的技能! 【课程设计】 在本课程中,刘运强老师会结合自己十多年来对MySQL的心得体会,通过课程给你分享一条高效的MySQL入门捷径,让学员少走弯路,彻底搞懂MySQL。 本课程包含3大模块:&nbsp; 一、基础篇: 主要以最新的MySQL8.0安装为例帮助学员解决安装与配置MySQL的问题,并对MySQL8.0的新特性做一定介绍,为后续的课程展开做好环境部署。 二、SQL语言篇: 本篇主要讲解SQL语言的四大部分数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL,学会熟练对库表进行增删改查等必备技能。 三、MySQL进阶篇: 本篇可以帮助学员更加高效的管理线上的MySQL数据库;具备MySQL的日常运维能力,语句调优、备份恢复等思路。 &nbsp;

C/C++学习指南全套教程

C/C++学习的全套教程,从基本语法,基本原理,到界面开发、网络开发、Linux开发、安全算法,应用尽用。由毕业于清华大学的业内人士执课,为C/C++编程爱好者的教程。

C/C++跨平台研发从基础到高阶实战系列套餐

一 专题从基础的C语言核心到c++ 和stl完成基础强化; 二 再到数据结构,设计模式完成专业计算机技能强化; 三 通过跨平台网络编程,linux编程,qt界面编程,mfc编程,windows编程,c++与lua联合编程来完成应用强化 四 最后通过基于ffmpeg的音视频播放器,直播推流,屏幕录像,

我以为我对Mysql事务很熟,直到我遇到了阿里面试官

太惨了,面试又被吊打

专为程序员设计的数学课

<p> 限时福利限时福利,<span>15000+程序员的选择!</span> </p> <p> 购课后添加学习助手(微信号:csdn590),按提示消息领取编程大礼包!并获取讲师答疑服务! </p> <p> <br> </p> <p> 套餐中一共包含5门程序员必学的数学课程(共47讲) </p> <p> 课程1:《零基础入门微积分》 </p> <p> 课程2:《数理统计与概率论》 </p> <p> 课程3:《代码学习线性代数》 </p> <p> 课程4:《数据处理的最优化》 </p> <p> 课程5:《马尔可夫随机过程》 </p> <p> <br> </p> <p> 哪些人适合学习这门课程? </p> <p> 1)大学生,平时只学习了数学理论,并未接触如何应用数学解决编程问题; </p> <p> 2)对算法、数据结构掌握程度薄弱的人,数学可以让你更好的理解算法、数据结构原理及应用; </p> <p> 3)看不懂大牛代码设计思想的人,因为所有的程序设计底层逻辑都是数学; </p> <p> 4)想学习新技术,如:人工智能、机器学习、深度学习等,这门课程是你的必修课程; </p> <p> 5)想修炼更好的编程内功,在遇到问题时可以灵活的应用数学思维解决问题。 </p> <p> <br> </p> <p> 在这门「专为程序员设计的数学课」系列课中,我们保证你能收获到这些:<br> <br> <span> </span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">①价值300元编程课程大礼包</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">②应用数学优化代码的实操方法</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">③数学理论在编程实战中的应用</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">④程序员必学的5大数学知识</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">⑤人工智能领域必修数学课</span> </p> <p> <br> 备注:此课程只讲程序员所需要的数学,即使你数学基础薄弱,也能听懂,只需要初中的数学知识就足矣。<br> <br> 如何听课? </p> <p> 1、登录CSDN学院 APP 在我的课程中进行学习; </p> <p> 2、登录CSDN学院官网。 </p> <p> <br> </p> <p> 购课后如何领取免费赠送的编程大礼包和加入答疑群? </p> <p> 购课后,添加助教微信:<span> csdn590</span>,按提示领取编程大礼包,或观看付费视频的第一节内容扫码进群答疑交流! </p> <p> <img src="https://img-bss.csdn.net/201912251155398753.jpg" alt=""> </p>

Eclipse archetype-catalog.xml

Eclipse Maven 创建Web 项目报错 Could not resolve archetype org.apache.maven.archetypes:maven-archetype-web

使用TensorFlow+keras快速构建图像分类模型

课程分为两条主线: 1&nbsp;从Tensorflow的基础知识开始,全面介绍Tensorflow和Keras相关内容。通过大量实战,掌握Tensorflow和Keras经常用到的各种建模方式,参数优化方法,自定义参数和模型的手段,以及对训练结果评估与分析的技巧。 2&nbsp;从机器学习基础算法开始,然后进入到图像分类领域,使用MNIST手写数据集和CIFAR10图像数据集,从简单神经网络到深度神经网络,再到卷积神经网络,最终完成复杂模型:残差网络的搭建。完成这条主线,学员将可以自如地使用机器学习的手段来达到图像分类的目的。

Python代码实现飞机大战

文章目录经典飞机大战一.游戏设定二.我方飞机三.敌方飞机四.发射子弹五.发放补给包六.主模块 经典飞机大战 源代码以及素材资料(图片,音频)可从下面的github中下载: 飞机大战源代码以及素材资料github项目地址链接 ————————————————————————————————————————————————————————— 不知道大家有没有打过飞机,喜不喜欢打飞机。当我第一次接触这个东西的时候,我的内心是被震撼到的。第一次接触打飞机的时候作者本人是身心愉悦的,因为周边的朋友都在打飞机, 每

最近面试Java后端开发的感受:如果就以平时项目经验来面试,通过估计很难,不信你来看看

在上周,我密集面试了若干位Java后端的候选人,工作经验在3到5年间。我的标准其实不复杂:第一能干活,第二Java基础要好,第三最好熟悉些分布式框架,我相信其它公司招初级开发时,应该也照着这个标准来面的。 我也知道,不少候选人能力其实不差,但面试时没准备或不会说,这样的人可能在进团队干活后确实能达到期望,但可能就无法通过面试,但面试官总是只根据面试情况来判断。 但现实情况是,大多数人可能面试前没准备,或准备方法不得当。要知道,我们平时干活更偏重于业务,不可能大量接触到算法,数据结构,底层代码这类面试必问

三个项目玩转深度学习(附1G源码)

从事大数据与人工智能开发与实践约十年,钱老师亲自见证了大数据行业的发展与人工智能的从冷到热。事实证明,计算机技术的发展,算力突破,海量数据,机器人技术等,开启了第四次工业革命的序章。深度学习图像分类一直是人工智能的经典任务,是智慧零售、安防、无人驾驶等机器视觉应用领域的核心技术之一,掌握图像分类技术是机器视觉学习的重中之重。针对现有线上学习的特点与实际需求,我们开发了人工智能案例实战系列课程。打造:以项目案例实践为驱动的课程学习方式,覆盖了智能零售,智慧交通等常见领域,通过基础学习、项目案例实践、社群答疑,三维立体的方式,打造最好的学习效果。

微信小程序开发实战之番茄时钟开发

微信小程序番茄时钟视频教程,本课程将带着各位学员开发一个小程序初级实战类项目,针对只看过官方文档而又无从下手的开发者来说,可以作为一个较好的练手项目,对于有小程序开发经验的开发者而言,可以更好加深对小程序各类组件和API 的理解,为更深层次高难度的项目做铺垫。

相关热词 c#设计思想 c#正则表达式 转换 c#form复制 c#写web c# 柱形图 c# wcf 服务库 c#应用程序管理器 c#数组如何赋值给数组 c#序列化应用目的博客园 c# 设置当前标注样式
立即提问