out.println()和<%=%>那种输出方式更好?

out.println()和<%=%>那种输出方式更好?


在JSP的学习中,我们会发现在JSP页面中,out.println( )和<%= %>都可以输出结果到JSP页面中,那么我们选择那种方式更好呢?
答案是:尽量少使用out.println( )输出,而使用<%= %>(表达式输出)。
JSP页面的开发,实际就相当于在HTML中加入java代码,用来控制以下java数据的简单操作和输出,但是为了能够在团队合作开发时,让美工能够更好的修饰,我们 使用<%= %>(表达式输出),可以降低HTML与java代码的耦合性,式java代码和HTML代码相分离,降低后期处理和调试的麻烦度。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
从您提供的代码看,定时任务是在项目启动时就开始执行了。如果在数据还没初始化完成时就开始执行,那么定时任务执行的结果就会不正确。您可以尝试通过以下方式解决: 1. 将定时任务的执行时间延后一段时间,比如将初始延迟时间设置为1分钟,然后再执行定时任务,以确保数据已经初始化完成。 2. 在定时任务中加入一些日志输出,以便您更好地定位问题所在。 3. 另外,您可以通过修改定时任务的执行方式,让定时任务在第一次执行时等待数据初始化完成后再开始执行。例如,可以在定时任务中加入一些判断逻辑,如果数据还没有初始化完成,则等待一段时间后再执行定时任务。 以下是修改后的代码,供您参考: ``` public JxMjkhTxController() { } public JxMjkhTxController(ScheduledExecutorService scheduledExecutorService, JxMjKhTxService jxMjKhTxService, ConstantProperties constantProperties) { this.scheduledExecutorService = scheduledExecutorService; this.jxMjKhTxService = jxMjKhTxService; this.constantProperties = constantProperties; } @PostConstruct public void init() { System.out.println("=====================================init-start========================"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); scheduledExecutorService.schedule(() -> { while (true) { if (dataIsInitialized()) { break; } try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } } scheduledExecutorService.scheduleAtFixedRate(() -> { try { new SaveResultTask(jxMjKhTxService, constantProperties).run(); } catch (Exception e) { e.printStackTrace(); log.error(e.getMessage()); } }, 0, 10, TimeUnit.MINUTES); }, 1, TimeUnit.MINUTES); } private boolean dataIsInitialized() { // 判断数据是否已经初始化完成,如果是,则返回true,否则返回false // 这里可以根据具体业务逻辑来实现 return true; } @GetMapping("/saveTxData") public List<Map<String, Object>> getResult() throws Exception { System.out.println("开始查询提醒接口数据"); return jxMjKhTxService.selectJxMjkhTxData(constantProperties.getJsbh()); } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值