草庐IT

SpringMVC执行流程

全部标签

java - 如何在呈现页面之前执行 bean 方法?

在呈现使用该bean的JSF页面之前在bean中执行方法的最佳方法是什么?更新:我正在尝试执行一种方法,该方法将填充JSF支持bean使用的一些数据。此辅助bean用于JSP页面上的表单,我需要在其中预填充一些数据。 最佳答案 在JSF2中,您也可以使用系统事件。 关于java-如何在呈现页面之前执行bean方法?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5725834/

java - 如何加入使用执行程序服务启动的线程?

在main方法中,子线程开始使用java1.5执行程序服务机制。如何让主线程等待子线程完成?publicclassMainClass{publicstaticvoidmain(String[]args){ExecutorServiceexecutorService=null;try{executorService=Executors.newFixedThreadPool(1);executorService.execute(newTestThread());System.out.println("Mainprogramexited...");}catch(Exceptione){e.p

java - 这个递归循环代码是如何执行的

我有一些代码行我无法理解代码是如何执行的,我的意思是程序流程。代码:1)publicclassRecurLoopTest{2)publicstaticvoidmain(String[]args){3)printit(2);4)}5)privatestaticintprintit(intn){6)if(n>0){7)printit(--n);8)}9)System.out.print(n+",");10)returnn;11)}12)}我认为输出应该是:0,但输出是:0,0,1,我在类里面做了很多次DEBUG,我在调试时看到的流程:从第3行开始执行,即以2作为参数调用printit()。

java - 如何在 Spring AOP 中停止方法执行

我创建了一个名为BaseCron的bean,它有一个方法executeBefore(),该方法在下面的spring配置中配置为拦截Crons类的所有方法调用并在它们之前执行。executeBefore()方法有一些验证。我早些时候验证了某些条件,如果它们是假的,我就会抛出异常。这种异常抛出导致方法失败,因此Crons类中的方法没有执行。它工作正常。您能否建议我可以停止Crons类的执行而不抛出异常的其他方法。我尝试返回,但没有成功。Abc类:publicclassAbc{publicvoidcheckCronExecution(){log.info("TestExecuted");lo

java - 你如何每 5 分钟执行一次 cron 作业?

JobDetailjob1=JobBuilder.newJob(FirstJob.class).withIdentity("job1","group1").build();Triggertrigger1=TriggerBuilder.newTrigger().withIdentity("cronTrigger1","group1").withSchedule(CronScheduleBuilder.cronSchedule("*/10****?")).build();Schedulerscheduler1=newStdSchedulerFactory().getScheduler();

java - 我能否在启用所有日志记录和禁用所有日志记录的情况下自动执行一次 JUnit 测试用例?

我找到了解决方案,请参阅下面我自己的回答。有没有人有更优雅的?我想这样做是为了增加代码覆盖率并发现细微的错误。假设要测试以下类:publicclassFoo{privatefinalLoggerlogger=LoggerFactory.getLogger(Foo.class);publicvoidbar(){Stringparam=[..];if(logger.isInfoEnabled())logger.info("Amessagewithparameter{}",param);if(logger.isDebugEnabled()){//somecomplicatedpreparat

java - 在 JSF 2 中执行操作后导航到同一页面

我有一个组件是用JSF1.x完成的,这个组件有一个命令按钮,如下所示其中templateController作为EL绑定(bind)传递,可以是实现特定接口(interface)的任何对象。next()的通用实现只是执行代码,然后返回一个空字符串,导致同一页面刷新:publicStringnext(){.....return"";}现在我正在尝试将该组件移植到JSF2,我的问题是空字符串不会再导致同一页面刷新,相反,框架会尝试重定向到名为“.jsf”的页面,即只需将.jsf附加到任何结果即可。我的问题是如何返回导致当前页面刷新的结果。我的组件是通用的,我事先不知道将要使用它的页面的名称

java - 为什么必须将main方法声明为public...为什么JVM不能执行private main方法

通常我在各种书籍中发现main方法应该是公共(public)的,因为它应该对类加载器可见。但是JVM执行(或提供特殊处理)各种私有(private)方法,例如ObjectOutputStream中的readObject/writeObject方法。 最佳答案 很明显,您的程序的入口点应该是可见的。 关于java-为什么必须将main方法声明为public...为什么JVM不能执行privatemain方法,我们在StackOverflow上找到一个类似的问题:

java - 线程池执行器 : how does it reuse threads

我读到ThreadPoolExecutor有线程池,这个池注定要降低创建新线程的成本(至少我是这样理解下面的短语):Whenyousendatasktotheexecutor,ittriestouseapooledthreadfortheexecutionofthistask,toavoidcontiniousspawningofthreads.[Java7ConcurrencyCookbook]但是,据我所知,我们无法在Java中重新启动线程。问题:ThreadPoolExecutor如何避免创建新线程? 最佳答案 这很简单-本质

java - 为什么我的 for 循环执行时间没有改变?

publicclassTest{publicstaticvoidmain(String[]args){intx=150_000;longstart=System.currentTimeMillis();for(inti=0;i有人可以解释为什么将x设置为150_000或4_000_000甚至2_000_000_000不会改变此循环的执行时间吗? 最佳答案 在执行期间,JVM的即时(JIT)编译器将java字节码(类格式)编译为您机器的native指令集。JIT在编译期间执行多项优化。在这种情况下,JIT可能意识到以下内容(只是猜测)