系统开发中,常常需要在特定时刻执行特定的任务,Java支持定时任务功能。请实现定时任务执行功能。 原理很简单,通过线程睡眠来起到定时的效果。创建一个线程,然后让它在while里一直睡眠,到时间唤醒即可。 package com.edisoncgh.timer; public class Test { public static void main(String[] args) { // 设置时间间隔,单位ms int timeInterval = 1000; Runnable runnable = new Runnable() { @Override public void run() { while(1) { System.out.println("尝试定时"); try { Thread.sleep(timeInterval); } catch (Exception e) { e.toString(); } } } }; Thread …
通过mailgun的api平台实现邮件发送功能。 import java.io.File; import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.JsonNode; import com.mashape.unirest.http.Unirest; import com.mashape.unirest.http.exceptions.UnirestException; // 此处为mailgun官方提供的java语言调用方法 public class MGSample { public static JsonNode sendSimpleMessage() throws UnirestException { String domainName = "这里设置mailgun平台的私人域域名"; String apiKey = "这里设置mailgun平台提供的api私钥"; String mailFrom = "这里设置邮件发送者信息"; String mailTo = "这里设置邮件接受者信息"; String mailTitle = "这里设置邮件标题"; String …
方法1:kaptcha开源组件。 导入maven依赖 <!-- 引入kaptcha依赖 --> <!-- https://mvnrepository.com/artifact/com.github.penggle/kaptcha --> <dependency> <groupId>com.github.penggle</groupId> <artifactId>kaptcha</artifactId> <version>2.3.2</version> </dependency> index.jsp页面 <form action="check.jsp"> <div> <label>验证码</label> <input required name="VerificationCode" type="text" placeholder="请输入验证码" autocomplete="off" /> </div> <div> <img alt="验证码" id="imageCode" src="randomCode.jpg" /> <button onclick="reload()">看不清?</a> </div> <div> <button type="submit">进行验证</button> …
Vo(view object) Vo即view object,也叫视图对象。通常我们会将一个web网页封装为一个对象,然后用一个vo对象在控制层与视图层之间作传输转换。即,vo的作用是给视图提供数据支撑,这个数据从控制层来,用以描述你期望描述的页面。 DTO(data transfer object) DTO即data transfer object,也叫数据传输对象。把它和DAO(data access object,数据访问对象)相区分开来是很有必要的。DAO是封装对数据的访问,通常用来描述所有数据,例如某表的所有字段。而DTO用来传输开发者所指定的部分数据,即使某表存在100个字段,我也可以只实现一个获取其中10个字段的DTO对象并传到下一层。通常来讲,DAO将实体对象抽象成持久层对象,并组装成DTO,也就是说这二者之间存在一个逻辑上的递进关系。 DO(Data Object) 与数据库表结构一一对应,通过DAO层向上传输数据的数据源对象。 PO(persistant object) 持久层对象,对应数据库中表的字段,数据库表中的记录在java对象中的显示状态,最形象的理解就是一个PO就是数据库中的一条记录。
开篇文章记录一下开(hua)发(shui)周期仨个半星期的Java开发期末设计。 项目一览 欢迎页面 登录页面 系统主页 表单页面 技术结构 需求分析 我们选的题目是图书管理系统,没别的原因,就图它简单。因为别的事情很多,并没有过多的精力单独放在这一门课。先研究研究老师给的需求: 大致功能需求: 图书信息有书名、ISBN、分类号、作者、在管本数。借书人姓名、性别、学号、班级、专业。 1)系统用户管理:系统管理员的增删改查; 2)图书管理:新进图书信息录入、修改、删除、查询,按模板导入,导出; 3)为借书人办理注册即添加借书人,借书人的增删改查; 4)办理借书手续; 5)借书信息的查询、统计,统计信息可按班级、书类别条件筛选导出Excel表; 从这些描述里,我们可以概括出以下核心功能: 1. 管理员、图书、借书人、借阅记录的常规增删改查; 2. 借阅记录的统计、筛选、查询; 3. Excel导出表格内容。 在动手开发之前,一定要明确项目的核心功能,这样写起来脑子才不会乱,至少不会乱得很离谱。 贴一下项目最终的结构(为保证观感,已省略末级目录)。