junit4 测试类(A)的时候 测试结果报空指针异常
junit4 测试类(A)的时候  (A)中的方法引用了接口  
    然后用bebug测试的时候 到引用接口的那一行的时候就会报空指针异常 
    请问 有什么办法使他不报异常 而这个接口又不能去除掉 
    求解!!!

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
junit4 测试maven项目的时候报空指针异常

测试的时候报空指针异常 java.lang.NullPointerException at hcb.controller.hr.Employee.transferEmployee(Employee.java:378) at hello.TestEmployee.testTransferEmployee(TestEmployee.java:175) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at junit.framework.TestCase.runTest(TestCase.java:176) at junit.framework.TestCase.runBare(TestCase.java:141) at junit.framework.TestResult$1.protect(TestResult.java:122) at junit.framework.TestResult.runProtected(TestResult.java:142) at junit.framework.TestResult.run(TestResult.java:125) at junit.framework.TestCase.run(TestCase.java:129) at junit.framework.TestSuite.runTest(TestSuite.java:252) at junit.framework.TestSuite.run(TestSuite.java:247) at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:86) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192) 测试的时候引用到其他的类就会报错 请问这是为什么? 麻烦求解释!!!!!!!!!

关于springmvc junit中MockMVC测试controller 报空指针错误

controller中通过@RequestMapping拼接http访问url,请求方式是post, @ResponseBody注解的方法中传入两个参数,第一个用于url路径拼接,使用@PathVariable注解标识,第二个参数是一个自定义request对象,其中包含两个Integer字段以及一个 自定义类对象,类对象中包含3个String字段,再junit Test中定义一个MockMVC对象,调用Perform方法, post(url)并将参数通过.param传递,传递类对象时,通过变量名.字段传入,运行时报错空指针异常 如图![图片说明](https://img-ask.csdn.net/upload/201804/05/1522938220_69481.jpg) debug时进入了jar包中的.class文件,怀疑是不是注解使用不正确,哪位大佬可以帮忙解答一下,非常感谢!

eclipe运行单元测试总是出现空指针异常

![图片说明](https://img-ask.csdn.net/upload/201505/06/1430878471_917035.png) 总是先出现这个选项,然后选择了eclipse那个 后面就这样了 ![图片说明](https://img-ask.csdn.net/upload/201505/06/1430878506_471365.png)

我的jsp程序用junit测试数据显示正确,但是用在jsp页面显示空指针异常

程序如下: ``` <% List<Emp> list=new EmpDao().findAll(); for (Emp emp : list) { out.print(emp.getEmpno()+" "+emp.getEname()+" "+emp.getHireDate()+" "+emp.getSal()+"<br/>"); } %> ``` 显示异常: ``` org.apache.jasper.JasperException: An exception occurred processing JSP page /index.jsp at line 35 32: response.addCookie(c1); 33: response.addCookie(c2); 34: response.sendRedirect("cookie.jsp"); */ 35: List<Emp> list=new EmpDao().findAll(); 36: for (Emp emp : list) { 37: out.print(emp.getEmpno()+" "+emp.getEname()+" "+emp.getHireDate()+" "+emp.getSal()+"<br/>"); 38: } Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:588) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:481) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329) javax.servlet.http.HttpServlet.service(HttpServlet.java:729) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) root cause java.lang.NullPointerException dao.BaseDao.excuteFind(BaseDao.java:23) dao.EmpDao.findAll(EmpDao.java:14) org.apache.jsp.index_jsp._jspService(index_jsp.java:153) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:729) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:443) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329) javax.servlet.http.HttpServlet.service(HttpServlet.java:729) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ``` 检查无法获得连接,可是我用junit取得的连接是正常的,这怎么搞? basedao程序 ``` package cn.anywhere.dao; import java.io.*; import java.sql.*; import java.util.Properties; import java.sql.DriverManager; import cn.anywhere.util.DatabaseConnection; public class BaseDAO { protected PreparedStatement pstmt = null; protected ResultSet rs = null; protected static Properties properties=null; protected static Connection connection = null; public ResultSet findAll(String sql){ try{ connection=DatabaseConnection.getConnection(); pstmt=connection.prepareStatement(sql); rs=pstmt.executeQuery(); return rs; } catch (SQLException e){ e.printStackTrace(); } return rs; } } ``` 显示的异常是connection异常.我怀疑是我的oracle jdbc文件没放对位置.因为java程序我在biuld path里加载oracle7.jar文件做连接.但是JSP程序的oracle jdbc文件应该放哪个目录? 我的项目目录结构是这样的 ![图片说明](https://img-ask.csdn.net/upload/201704/20/1492699458_461238.jpg)

mybatis单元测试空指针

![![![图片说明](https://img-ask.csdn.net/upload/201610/10/1476068010_542255.png)图片说明](https://img-ask.csdn.net/upload/201610/10/1476068030_892503.png)图片说明](https://img-ask.csdn.net/upload/201610/10/1476068022_317570.png) 总是空指针异常 查不到数据库

SSH搭建框架报空指针异常

我在进行SSH基础框架搭建的时候(就是还没有配置实体类),只是进行了整合配置,将事务管理和数据库连接配置在spring中,spring代码如下: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"  xmlns:jdbc="http://www.springframework.org/schema/jdbc"   xmlns:jee="http://www.springframework.org/schema/jee"  xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop"  xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:util="http://www.springframework.org/schema/util" xmlns:jpa="http://www.springframework.org/schema/data/jpa" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd"> <!-- 开启扫描组件 --> <context:component-scan base-package="cn.itcast.oa"/> <context:property-placeholder location="classpath:db.properties"/> <!-- 配置sessionfactory --> <bean id="sessionFactory" > <property name="configLocation" value="classpath:hibernate.cfg.xml"></property> </bean> <!-- 配置连接数据库 --> <bean id="datasource" > <property name="url" value="${url}"/> <property name="username" value="${username}"/> <property name="password" value="${password}"/> <property name="driverClassName" value="${driverClassName}"/> </bean> <!-- 配置声明式事务管理(采用注解的方式) --> <!-- 配置事务管理器 --> <bean id="txManager" > <!-- 引用前边配置的SessionFactory --> <property name="sessionFactory" ref="sessionFactory"></property> </bean> <!-- 注解驱动 --> <tx:annotation-driven transaction-manager="txManager"/>  </beans> 将sessionFactory中配置数据库连接的时候,就是<prorerty>中将数据库连接引进来的时候,就会报空指针异常,各位大牛能解答吗(纯自学SSH),环境是:Windows+Tomcat+oracle(虚拟机)

windows eclipse 下开发hadoop mapreduce,报空指针异常。

用三台ubuntu系统的服务器,搭建了hadoop集群,然后在windows下 用eclipse开发mapreduce,能连上hadoop,也能显示hdsf上的文件。自己写了mapreduce程序,run as hadoop 的时候,报空指针异常,什么localjob 之类的错误,什么原因求指点, 将工程打成jar包在linux hadoop环境用命令行运行是没问题的。。

学习SSM框架分页插件查询时出现空指针异常,求解!!!

异常代码: ``` java.lang.NullPointerException at com.atguigu.crud.test.MvcTest.testPage(MvcTest.java:53) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.springframework.test.context.junit4.statements.RunBeforeTestExecutionCallbacks.evaluate(RunBeforeTestExecutionCallbacks.java:74) at org.springframework.test.context.junit4.statements.RunAfterTestExecutionCallbacks.evaluate(RunAfterTestExecutionCallbacks.java:84) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:75) at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:86) at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:84) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:251) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:89) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:41) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:541) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:763) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:463) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:209) ``` 测试了一下: ``` MvcResult result = mockMvc.perform(MockMvcRequestBuilders.get("/emps").param("pn", "1")).andReturn(); MockHttpServletRequest request = result.getRequest(); System.out.println("1:"+request); System.out.println("2:"+request.getAttribute("pageInfo")); ``` 结果: 1:org.springframework.mock.web.MockHttpServletRequest@4a067c25 2:null 是在执行了getAttribute()这个方法后出现的异常 代码检查了几遍了,不知道是不是哪个配置文件出了问题。

在servlet的doGet()里面调用方法一直报空指针异常

总共就一个超链接连了一个servlet servlet里的代码是: package com.simple.mvc; import java.io.IOException; import java.util.List; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/getAllProject") public class GetAllProjectServlet extends HttpServlet { private static final long serialVersionUID = 2L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { DAO dao=new DAO(); List<Project> prs=dao.getAllProject(); System.out.println(prs.size()); } } DAO里面的代码是: package com.simple.mvc; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; import org.junit.Test; public class DAO { @Test public void test(){ DAO dao=new DAO(); List<Project> prs=dao.getAllProject(); System.out.println(prs.size()); } public List<Project> getAllProject(){ List<Project> prs=new ArrayList<>(); Connection connection =null; PreparedStatement preparedStatement=null; ResultSet resultSet=null; try { connection=JDBCTools.getConnection(); String sql="SELECT p_id,p_name,t_name "+ "FROM project p,teacher t "+ "WHERE p.`t_id`=t.`t_id` AND p_if=2"; preparedStatement = connection.prepareStatement(sql); resultSet = preparedStatement.executeQuery(); while(resultSet.next()){ int p_id=resultSet.getInt(1); String p_name=resultSet.getString(2); String t_name=resultSet.getString(3); Project project = new Project(p_id, p_name,t_name); prs.add(project); } } catch (Exception e) { e.printStackTrace(); }finally{ JDBCTools.release(resultSet, preparedStatement, connection); } return prs; } } 在超链接访问servlet时就报java.lang.NullPointerException 我看了是因为List<Project> prs=dao.getAllProject();返回为null 但是为什么会返回为null 我在DAO写了一个测试单元,测试返回不为null呀,求大神解答 报错内容为 java.lang.NullPointerException at java.util.Properties$LineReader.readLine(Properties.java:434) at java.util.Properties.load0(Properties.java:353) at java.util.Properties.load(Properties.java:341) at com.simple.mvc.JDBCTools.getConnection(JDBCTools.java:44) at com.simple.mvc.DAO.getAllProject(DAO.java:28) at com.simple.mvc.GetAllProjectServlet.doGet(GetAllProjectServlet.java:22) at javax.servlet.http.HttpServlet.service(HttpServlet.java:624) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)0 at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745)

SSH整合后整合action和业务类总报空指针异常

运行异常结果: java.lang.NullPointerException com.web.Controller.sayhello(Controller.java:23) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:606) com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:452) com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:291) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:254) com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263) org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:133) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:142) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:166) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52) org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:485) org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77) org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91) --------------------------------------------------------------------------------- Controller.java package com.web; import java.util.List; import javax.servlet.http.HttpServletRequest; import org.apache.struts2.ServletActionContext; import com.bean.Girls; import com.biz.GirlsBiz; public class Controller { private GirlsBiz girlsBiz; //设值注入 public void setGirlsBiz(GirlsBiz girlsBiz) { this.girlsBiz = girlsBiz; } public String sayhello(){ List<Girls> list=girlsBiz.findAllGirls(); HttpServletRequest request=ServletActionContext.getRequest(); request.setAttribute("glist", list); return "hello"; } } 我用junit测试时girlsBiz.findAllGirls()里是有值的

junit4 是不是有bug???

1. 有注解Test 1. 被测试方法公有、无参 1. 代码已保存 满足以上所有条件,右键方法名, test by junit ,始终报no tests异常。 <br> 新建一个类文件 代码复制过去,成功运行。 <br> 我就想问下,旧我一个人碰到过这问题???? ps: csdn的编辑器怎么这么水

service利用注解注入,会空指针异常。而用getBean方式则可以获取到service。

**spring配置文件如下:** <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <bean id="placeholderProperties" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath:conf/config.properties</value> </list> </property> <property name="fileEncoding" value="utf-8" /> </bean> <import resource="spring-hibernate.xml" /> <!-- Import basic SpringMVC Resteasy integration --> <import resource="classpath:springmvc-resteasy.xml" /> <!-- 扫描文件 --> <context:component-scan base-package="com.sinopec.carlife" /> </beans> **service接口如下:** package com.sinopec.carlife.service.api; import java.util.List; import javax.ws.rs.Consumes; import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import com.sinopec.carlife.model.Region; @Path("/regions") @Consumes({MediaType.APPLICATION_JSON}) @Produces({MediaType.APPLICATION_JSON}) public interface RegionService { /** * 获取所有城市 * @return * @throws Exception */ @POST @Path("/all") public List<Region> findRegions() throws Exception; } **service实现类如下:** package com.sinopec.carlife.service.impl; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.sinopec.carlife.dao.RegionDAO; import com.sinopec.carlife.model.Region; import com.sinopec.carlife.service.api.RegionService; @Service("regionService") public class RegionServiceImpl implements RegionService { @Autowired private RegionDAO regionDAO; @Override public List<Region> findRegions() throws Exception { return regionDAO.findRegions(); } } **junit测试如下:** package test.com.sinopec.carlife; import java.util.List; import javax.annotation.Resource; import junit.framework.TestCase; import org.junit.Test; import com.sinopec.carlife.model.Region; import com.sinopec.carlife.service.api.RegionService; public class RegionServiceTest extends TestCase { @Resource(name="regionService") private RegionService regionService; @Test public void testFindRegions() { try { /*ApplicationContext context = new ClassPathXmlApplicationContext("classpath:spring/spring.xml"); regionService = (RegionService) context.getBean("regionService");*/ List<Region> regions = regionService.findRegions(); System.out.println(regions.size()); } catch (Exception e) { e.printStackTrace(); } } }

springboot+dubbo在写单元测试的时候controller中的@Reference注解属性为null

问题描述 项目中运用springboot+dubbo注解方式的配置开发,正常启动项目没有什么问题,但是当我在写单元测试的时候,发现@Reference标注的属性为null,导致调用空指针异常. 相关代码 待测试方法: ``` @RestController @RequestMapping("/api/user") public class UserController { @Reference(version = "${dubbo.service.version}") private IUserService userService; @PostMapping(value="/login", produces="application/json;charset=UTF-8") public JsonApi login(String username, String password) { User search = new User(); search.setUsername(username); User user = userService.selectUserBy(search); if (StringUtils.isEmpty(user)){ search.setUsername(null); search.setEmail(username); user = userService.selectUserBy(search); } if (StringUtils.isEmpty(user)){ throw new AuthorizeException(ErrorCode.USER_UNKNOWN_ACCOUNT); } return JsonApi.isOk()..data(user); } } ``` 测试方法: ``` @RunWith(SpringJUnit4ClassRunner.class) @WebAppConfiguration @SpringBootTest public class UserControllerTest { private MockMvc mvc; @Before public void setUp() { mvc = MockMvcBuilders.standaloneSetup(new UserController()).build(); } @Test public void login() throws Exception { RequestBuilder request = post("/api/user/login") .contentType(MediaType.APPLICATION_JSON) .param("username","test") .param("password","123456"); String rs = mvc.perform(request) //.andDo(print()) .andExpect(status().isOk()) .andReturn() .getResponse() .getContentAsString(); System.out.println(rs); } } ``` 在运行测试用例的时候,发现private IUserService userService为空 ![图片说明](https://img-ask.csdn.net/upload/201809/26/1537953108_564995.png) 网上都是说和springMvc集成的时候加载顺序会导致这个空指针异常,但是我的项目正常启动是可以访问的,就是在测试用例的时候回出现空,不知道什么原因. 是哪里的配置没有配置对吗?

怪异的getHibernateTemplate().find()空指针问题

这个问题很怪.我在Junit下测试我的代码时,getHibernateTemplate().find()没有一点问题.当我把它放到Struts1.2的action下就报空指针异常.后来我改用Hibernate的session, 在query的时候还是出现同样的问题.关键只是在action中才出现,自己的测试代码中不出现.希望大家帮我看看. 异常如下: exception java.lang.NullPointerException org.hibernate.tuple.AbstractEntityTuplizer.createProxy(AbstractEntityTuplizer.java:372) org.hibernate.persister.entity.AbstractEntityPersister.createProxy(AbstractEntityPersister.java:3121) org.hibernate.event.def.DefaultLoadEventListener.createProxyIfNecessary(DefaultLoadEventListener.java:232) org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:173) org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:87) org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:862) org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:830) org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:266) org.hibernate.type.EntityType.resolve(EntityType.java:303) org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:116) org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:842) org.hibernate.loader.Loader.doQuery(Loader.java:717) org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224) org.hibernate.loader.Loader.doList(Loader.java:2145) org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029) org.hibernate.loader.Loader.list(Loader.java:2024) org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:375) org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:308) org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:153) org.hibernate.impl.SessionImpl.list(SessionImpl.java:1106) org.hibernate.impl.QueryImpl.list(QueryImpl.java:79) org.springframework.orm.hibernate3.HibernateTemplate$29.doInHibernate(HibernateTemplate.java:849) org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:372) org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:840) org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:836) com.ace.core.dao.impl.PersonDaoBean.getTPersonByName(PersonDaoBean.java:110) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) java.lang.reflect.Method.invoke(Unknown Source) org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304) org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:172) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:139) org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107) org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:161) org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) $Proxy7.getTPersonByName(Unknown Source) com.ace.core.business.impl.PersonManagerBean.login(PersonManagerBean.java:110) com.ace.core.struts.action.LoginAction.execute(LoginAction.java:53) org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) javax.servlet.http.HttpServlet.service(HttpServlet.java:710) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 这是我的applicationContext.xml: [code="xml"] <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="configLocation"> <value>hibernate.cfg.xml </value> </property> </bean> <!--事务管理器 --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory"> <ref local="sessionFactory" /> </property> </bean> <!-- Dao --> <bean id="personDao" class="com.ace.core.dao.impl.PersonDaoBean"> <property name="sessionFactory"> <ref local="sessionFactory" /> </property> <property name="roleDao"> <ref local="roleDaoProxy"/> </property> </bean> <bean id="roleDao" class="com.ace.core.dao.impl.RoleDaoBean"> <property name="sessionFactory"> <ref local="sessionFactory" /> </property> </bean> <!-- Proxy --> <bean id="personDaoProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> <property name="transactionManager"> <ref bean="transactionManager" /> </property> <!--实际操作数据的类 --> <property name="target"> <ref local="personDao"/> </property> <property name="transactionAttributes"> <props> <prop key="create*">PROPAGATION_REQUIRED </prop> <prop key="delete*">PROPAGATION_REQUIRED </prop> <prop key="update*">PROPAGATION_REQUIRED </prop> <prop key="change*">PROPAGATION_REQUIRED </prop> <prop key="get*">PROPAGATION_REQUIRED,readOnly </prop> </props> </property> </bean> <bean id="roleDaoProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> <property name="transactionManager"> <ref bean="transactionManager" /> </property> <!--实际操作数据的类 --> <property name="target"> <ref local="roleDao"/> </property> <property name="transactionAttributes"> <props> <prop key="create*">PROPAGATION_REQUIRED </prop> <prop key="delete*">PROPAGATION_REQUIRED </prop> <prop key="update*">PROPAGATION_REQUIRED </prop> <prop key="change*">PROPAGATION_REQUIRED </prop> <prop key="get*">PROPAGATION_REQUIRED,readOnly </prop> </props> </property> </bean> <!-- Manager --> <bean id="personManager" class="com.ace.core.business.impl.PersonManagerBean"> <property name="personDao"> <ref local="personDaoProxy"/> </property> <property name="roleDao"> <ref local="roleDaoProxy"/> </property> </bean> </beans> [/code] PerManagerBean的Login方法: [code="java"] public Person login(String name, String password) { TPerson tPerson = personDao.getTPersonByName(name); String md5Password = ""; try { md5Password = MD5HashUtil.hashCode(password); if(!(tPerson.getPassword().equals(md5Password))){ return null; } TRole tRole = tPerson.getTRole(); if(tRole.getId() == 2){ AdminBean admin = getAdminResouce(); admin.setTPerson(tPerson); return admin; }else if(tRole.getId() == 3){ UserBean user = getUserResouce(); user.setTPerson(tPerson); return user; }else if(tRole.getId() == 1){ SuperAdminBean superAdmin = getSuperAdminResouce(); superAdmin.setTPerson(tPerson); return superAdmin; } } catch (NoSuchAlgorithmException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } [/code] PersonDaoBean的getTPersonByName方法: [code="java"] public TPerson getTPersonByName(String name){ List list = getHibernateTemplate().find("from TPerson tp where tp.name=?",name); if(list.size() != 0){ TPerson tPerson = (TPerson) list.get(0); return tPerson; }else return null; } [/code]

spring注入jdbcTemplate时一直为空指针,求大牛指导

已经在spring配置文件中配置了jdbcTemplate的bean,但是在测试类中jdbcTemlpate的注入报空指针 ``` <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd "> <!-- 配置spring的jdbcTemplate--> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="dataSource"></property> </bean> <!-- 设置spring扫包路径 --> <context:component-scan base-package="com.hzbckj.spring" /> <!-- 导入资源文件 --> <context:property-placeholder location="db.properties" /> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="user" value="${user}"></property> <property name="password" value="${password}"></property> <property name="jdbcUrl" value="${jdbcUrl}"></property> <property name="driverClass" value="${driverClass}"></property> </bean> </beans> ``` 这是spring配置文件 ``` package com.hzbckj.spring.test; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Component; import javax.annotation.Resource; /** * Created by jackson on 2017/2/6. */ @Component public class dataSourceTest { @Resource(name = "jdbcTemplate") private JdbcTemplate jdbcTemplate; public JdbcTemplate getJdbcTemplate() { return jdbcTemplate; } public void setJdbcTemplate(JdbcTemplate jdbcTemplate) { this.jdbcTemplate = jdbcTemplate; } @Test public void testJdbc(){ // ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml"); // JdbcTemplate jdbcTemplate = (JdbcTemplate)ctx.getBean("jdbcTemplate"); String sql = "INSERT INTO user(name, balance) values('Jonn', 200)"; jdbcTemplate.execute(sql); } } ``` 这是使用的地方 执行时jdbcTemplate一直报空

关于springboot @RequestBody传递参数的问题?

![图片说明](https://img-ask.csdn.net/upload/202003/27/1585280608_269158.png) @PostMapping(value = "switchDefault") public RequestResult switchDefault(@RequestBody Integer id){ deliveryAddressManager.switchDefault(id); return RequestResult.success(); } ![图片说明](https://img-ask.csdn.net/upload/202003/27/1585280776_991219.png) ![图片说明](https://img-ask.csdn.net/upload/202003/27/1585280788_478749.png) 这是我postman调用的截图,postman调用老报错,将id封装在DTO内就能调用成功,在id上加@JsonProperty也是没用这是什么原因呢?

spring 注入 dao,引用的时候为null

![图片说明](https://img-ask.csdn.net/upload/201605/14/1463160241_79433.png) spring配置文件如下: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <!--<import resource="ApplicationContext-Bdxm.xml" /> In ApplicationContext.xml--> <beans default-lazy-init="false" default-dependency-check="none" default-autowire="no"> <bean id="IBdxmService" parent="baseTransactionProxy"> <property name="target"> <bean class="cn.com.ebidding.web.dljk.bdxm.service.impl.BdxmService"> <property name="dao" ref="IBdxmDao" /> </bean> </property> </bean> <bean id="IBdxmAuth" parent="baseTransactionProxy"> <property name="target"> <bean class="cn.com.ebidding.web.dljk.bdxm.auth.impl.BdxmAuth" singleton="false"> <property name="dao" ref="IBdxmDao" /> </bean> </property> </bean> <bean id="IBdxmBusiness" parent="baseTransactionProxy"> <property name="target"> <bean class="cn.com.ebidding.web.dljk.bdxm.business.impl.BdxmBusiness"> <property name="dao" ref="IBdxmDao" /> </bean> </property> </bean> <bean id="IBdxmValidate" parent="baseTransactionProxy"> <property name="target"> <bean class="cn.com.ebidding.web.dljk.bdxm.validate.impl.BdxmValidate"> <property name="dao" ref="IBdxmDao" /> </bean> </property> </bean> <bean id="IBdxmDao" class="cn.com.ebidding.web.dljk.bdxm.dao.impl.BdxmDao"> <property name="sessionFactory" ref="sessionFactory" /> </bean> </beans>

急:通過JNDI查找時返回的不是Bean實例對象,而是一個Null對象,該怎樣解決?

在Junit中测试Session Bean的业务方法时发现这样一种情况,通过JNDI查找Bean实例,并调用该Bean的某一业务方法时,抛出java.lang.NullPointerException异常,查找API文档,如下: public class NullPointerException extends RuntimeException 当应用程序试图在需要对象的地方使用 null 时,抛出该异常。这种情况包括: 调用 null 对象的实例方法。 访问或修改 null 对象的字段。 将 null 作为一个数组,获得其长度。 将 null 作为一个数组,访问或修改其时间片。 将 null 作为 Throwable 值抛出。 应用程序应该抛出该类的实例,指示其他对 null 对象的非法使用。 初步断定是第一种情况,调用了null对象的实例方法,也就是说通过JDNI查找时返回的不是Bean实例对象,而是一个null对象,请教一下,问题究竟出在什么地方,要怎样解决才好! 我所使用的服务器是jboss-5.0.1.GA-jdk6,查找JNDI树发现该Session Bean已经绑定到全局命名空间,所使用的数据库是JBoss默認提供的數據庫,DefaultDS已經綁定在Java命名空間,下面是Junit測試中的部分代碼: @BeforeClass public static void setUpBeforeClass() throws Exception { try { InitialContext ctx = new InitialContext(); Object ref = ctx.lookup("MedicineManagerBean/remote"); MedicineManager m = (MedicineManager) PortableRemoteObject.narrow( ref, MedicineManager.class); } catch (NamingException e) { System.out.println("命名异常"); e.printStackTrace(); } } 測試的方法代碼: @Test public void testSave() { m.save(new Medicine(11022, "黄莲上清片", "片剂", "片/板", "板", "2008-08-08", "2009-08-08")); } persistence.xml配置文件如下: <?xml version="1.0" encoding="UTF-8"?> <persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence/persistence_1_0.xsd" version="1.0"> <persistence-unit name="medicine" transaction-type="JTA"> <jta-data-source>java:/DefaultDS</jta-data-source> <properties> <property name="hibernate.hbm2ddl.auto" value="update"/> <property name="hibernate.show_sql" value="true"/> <property name="hibernate.format_sql" value="true"/> </properties> </persistence-unit> </persistence> 該應用的目錄結構如下: +src +cn.gdpu.domain //包結構 ---Medicine.java +cn.gdpu.profession //包結構 ---MedicineManagerRemote.java ---MedicineManagerLocal.java +cn.gdpu.profession.impl //包結構 ---MedicineManagerBean.java +junit.test //測試包 ---MedicineManagerTest.java +META-INF //META-INF目錄 ---persistence.xml ---jndi.properties //JNDI配置文件 +build //class文件所在目錄 ---build.xml //ANT配置文件 我是一个EJB学习的新手,因为所学课程需要,我现在正尝试用EJB开发一个药品管理系统,但是却因为这个问题而阻碍了进展,在網上也找不到相關的有用信息,已經調試了一兩個星期了可是還是沒有解決,所以有点急,希望懂的朋友帮忙指定一下,谢谢!!! [b]问题补充:[/b] 我所使用的開發工具是Eclipse,使用的JUnit工具也是Eclipse內嵌的,版本是JUnit4,下面是運行測試時給出的異常信息截圖: [b]问题补充:[/b] 截圖中异常指向的位置就是testSave()方法中m.save(...)方法所在語句! JNDI属性配置文件已经加入,内容如下: java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory java.naming.provider.url=localhost:1099 java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.Interfaces [b]问题补充:[/b] 很感谢lovewhzlq和hantsy的指点,在lovewhzlq的第二条回复中要求我给出更加详细的异常信息,由于我在使用Eclipse的JUnit进行测试的时候JUnit框架只给出了一条简单的信息,所以我就想通过一个简单的客户端来尝试捕获这个NullPointerException异常,并调用printStackTrace()方法,从而获得更加详细的异常信息,但是我却发现一个新的问题,我写了下面这样一个类来尝试获取详细的异常信息,但是却没有出现上面所说的异常,而是正确地运行了,查看数据库发现记录已经正确地插入了进去,但是重新运行Junit测试用例中的testSave()方法时却又出现了上面截图中所出现的情况,实际运行可以但是测试时却出异常,不知道这是不是因为Junit测试框架本身的问题!! 下面是我原本打算用来捕获异常的模拟客户端代码,这里的代码基本上都是从上面提到过的测试用例中直接Copy过来的: import javax.naming.InitialContext; import javax.naming.NamingException; import javax.rmi.PortableRemoteObject; import cn.gdpu.domain.Medicine; import cn.gdpu.profession.MedicineManager; public class client { public static void main(String args[]) { try { InitialContext ctx = new InitialContext(); Object ref = ctx.lookup("MedicineManagerBean/remote"); MedicineManager m = (MedicineManager) PortableRemoteObject.narrow( ref, MedicineManager.class); m.save(new Medicine(11022, "黄莲上清片", "片剂", "片/板", "板", "2008-08-08", "2009-08-08")); System.out.println("保存成功"); } catch (NamingException e) { System.out.println("命名异常"); e.printStackTrace(); } catch (NullPointerException er) { System.out.println("空指针异常"); er.printStackTrace(); } } } [b]问题补充:[/b] @BeforeClass public static void setUpBeforeClass() throws Exception { try { InitialContext ctx = new InitialContext(); Object ref = ctx.lookup("MedicineManagerBean/remote"); [color=red]//你这个地方是个局部变量啊, MedicineManager m = (MedicineManager) PortableRemoteObject.narrow( ref, MedicineManager.class); //应该写成 m = (MedicineManager) PortableRemoteObject.narrow( ref, MedicineManager.class); [/color] } catch (NamingException e) { System.out.println("命名异常"); e.printStackTrace(); } } 天哪?我怎么这么白痴啊,犯这种低级的错误这么久还没能够发现,晕!!真是太谢谢了!!问题已经解决!!

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

程序员请照顾好自己,周末病魔差点一套带走我。

程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。

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

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

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

和黑客斗争的 6 天!

互联网公司工作,很难避免不和黑客们打交道,我呆过的两家互联网公司,几乎每月每天每分钟都有黑客在公司网站上扫描。有的是寻找 Sql 注入的缺口,有的是寻找线上服务器可能存在的漏洞,大部分都...

Intellij IDEA 实用插件安利

1. 前言从2020 年 JVM 生态报告解读 可以看出Intellij IDEA 目前已经稳坐 Java IDE 头把交椅。而且统计得出付费用户已经超过了八成(国外统计)。IDEA 的...

女程序员,为什么比男程序员少???

昨天看到一档综艺节目,讨论了两个话题:(1)中国学生的数学成绩,平均下来看,会比国外好?为什么?(2)男生的数学成绩,平均下来看,会比女生好?为什么?同时,我又联想到了一个技术圈经常讨...

总结了 150 余个神奇网站,你不来瞅瞅吗?

原博客再更新,可能就没了,之后将持续更新本篇博客。

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

魂迁光刻,梦绕芯片,中芯国际终获ASML大型光刻机

据羊城晚报报道,近日中芯国际从荷兰进口的一台大型光刻机,顺利通过深圳出口加工区场站两道闸口进入厂区,中芯国际发表公告称该光刻机并非此前盛传的EUV光刻机,主要用于企业复工复产后的生产线扩容。 我们知道EUV主要用于7nm及以下制程的芯片制造,光刻机作为集成电路制造中最关键的设备,对芯片制作工艺有着决定性的影响,被誉为“超精密制造技术皇冠上的明珠”,根据之前中芯国际的公报,目...

优雅的替换if-else语句

场景 日常开发,if-else语句写的不少吧??当逻辑分支非常多的时候,if-else套了一层又一层,虽然业务功能倒是实现了,但是看起来是真的很不优雅,尤其是对于我这种有强迫症的程序"猿",看到这么多if-else,脑袋瓜子就嗡嗡的,总想着解锁新姿势:干掉过多的if-else!!!本文将介绍三板斧手段: 优先判断条件,条件不满足的,逻辑及时中断返回; 采用策略模式+工厂模式; 结合注解,锦...

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

2020阿里全球数学大赛:3万名高手、4道题、2天2夜未交卷

阿里巴巴全球数学竞赛( Alibaba Global Mathematics Competition)由马云发起,由中国科学技术协会、阿里巴巴基金会、阿里巴巴达摩院共同举办。大赛不设报名门槛,全世界爱好数学的人都可参与,不论是否出身数学专业、是否投身数学研究。 2020年阿里巴巴达摩院邀请北京大学、剑桥大学、浙江大学等高校的顶尖数学教师组建了出题组。中科院院士、美国艺术与科学院院士、北京国际数学...

为什么你不想学习?只想玩?人是如何一步一步废掉的

不知道是不是只有我这样子,还是你们也有过类似的经历。 上学的时候总有很多光辉历史,学年名列前茅,或者单科目大佬,但是虽然慢慢地长大了,你开始懈怠了,开始废掉了。。。 什么?你说不知道具体的情况是怎么样的? 我来告诉你: 你常常潜意识里或者心理觉得,自己真正的生活或者奋斗还没有开始。总是幻想着自己还拥有大把时间,还有无限的可能,自己还能逆风翻盘,只不是自己还没开始罢了,自己以后肯定会变得特别厉害...

男生更看重女生的身材脸蛋,还是思想?

往往,我们看不进去大段大段的逻辑。深刻的哲理,往往短而精悍,一阵见血。问:产品经理挺漂亮的,有点心动,但不知道合不合得来。男生更看重女生的身材脸蛋,还是...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试:第十六章:Java中级开发

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

Python爬虫,高清美图我全都要(彼岸桌面壁纸)

爬取彼岸桌面网站较为简单,用到了requests、lxml、Beautiful Soup4

差点跪了...

最近微信又搞出了一个大利器,甚至都上了热搜,当然消息最敏捷的自媒体人,纷纷都开通了自己的视频号。01 视频号是什么呢?视频号是微信体系内的短视频,它不同...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

Vue回炉重造之router路由(更新中)

你好,我是Vam的金豆之路,可以叫我豆哥。2019年年度博客之星、技术领域博客专家。主要领域:前端开发。我的微信是 maomin9761,有什么疑问可以加我哦,自己创建了一个微信技术交流群,可以加我邀请你一起交流学习。最后自己也创建了一个微信公众号,里面的文章是我自己精挑细选的文章,主要介绍各种IT新技术。欢迎关注哦,微信搜索:臻美IT,等你来。 欢迎阅读本博文,本博文主要讲述【】,文字通...

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

Java岗开发3年,公司临时抽查算法,离职后这几题我记一辈子

前几天我们公司做了一件蠢事,非常非常愚蠢的事情。我原以为从学校出来之后,除了找工作有测试外,不会有任何与考试有关的事儿。 但是,天有不测风云,公司技术总监、人事总监两位大佬突然降临到我们事业线,叫上我老大,给我们组织了一场别开生面的“考试”。 那是一个风和日丽的下午,我翘着二郎腿,左手端着一杯卡布奇诺,右手抓着我的罗技鼠标,滚动着轮轴,穿梭在头条热点之间。 “淡黄的长裙~蓬松的头发...

大胆预测下未来5年的Web开发

在2019年的ReactiveConf 上,《Elm in Action》的作者Richard Feldman对未来5年Web开发的发展做了预测,很有意思,分享给大家。如果你有机会从头...

大牛都会用的IDEA调试技巧!!!

导读 前天面试了一个985高校的实习生,问了他平时用什么开发工具,他想也没想的说IDEA,于是我抛砖引玉的问了一下IDEA的调试用过吧,你说说怎么设置断点...

立即提问
相关内容推荐