本文目錄一覽:
java程序員職責是什麼?
很多對Java程序員感興趣的朋友,總是在思考一個問題,我能不能成為一名Java程序員,能不能跟做不做是兩回事。JAVA程序員廣義上是指一群以JAVA為謀生手段的軟體開發人員。狹義的說,是指擁有SUN公司JAVA認證的程序員。通常要求程序員精通java基礎,java高級編程,及常用java設計模式,並深入理解mvc編程模式,了解uml相關知識。那麼,作為一個java程序員,他們的工作職責是什麼呢?
一、 java程序員工作 職責:
1、 參與公司項目的設計、開發與維護;
2、 具有獨立完成模塊開發工作的能力;
3、 較好的溝通能力,能積極應對工作,具備較好的抗壓性;
4、 能夠快速接受並掌握新知識;敢於面對和克服困難,具有分析和解決問題的能力;
5、 做事認真負責,有責任心,有良好的團隊合作精神。
二、Java開發程序員工作職責
1、完成軟體系統代碼的實現,編寫代碼注釋和開發文檔;
2、輔助進行系統的功能定義,程序設計;
3、根據設計文檔或需求說明完成代碼編寫,調試,測試和維護;
4、分析並解決軟體開發過程中的問題;
5、協助測試工程師制定測試計劃,定位發現的問題;
6、配合項目經理完成相關任務目標。
三、Java測試程序員工作職責
1、 具備紮實的軟體測試理論基礎,熟悉測試方法,測試流程;
2、熟練編寫測試用例和執行測試用例,會使用禪道進行bug 管理, 熟練使用配置管理工具SVN;
3、 會用資料庫查詢,了解介面測試,熟悉linux;
4、熟悉資料庫Oracle基本的增刪改查以及配置監聽等;
5、 熟悉SQL,會使用fiddler、httpwatch等工具進行介面測試。
java定時任務沒有執行完又到執行時間了
代碼錯誤。多數是代碼錯誤導致java定時任務沒有執行完又到執行時間了。
1、首先打開java檢查代碼是否錯誤。
2、其次打開網路診斷器進行測試網路連接是否異常。
3、最後點擊重新運行java即可。
java的幾種定時任務
java定時任務有三種:
– JDK自帶 :JDK自帶的Timer以及JDK1.5+ 新增的ScheduledExecutorService;
– Quartz :簡單卻強大的JAVA作業調度框架
– Spring3.0以後自帶的task :可以將它看成一個輕量級的Quartz,而且使用起來比Quartz簡單許多;
代碼參考:
JDK 自帶的定時器實現
schedule(TimerTask task, Date time) 特定時間執行
public static void main(String[] args) {
for (int i = 0; i 10; ++i) {
new Timer(“timer – ” + i).schedule(new TimerTask() {
@Override
public void run() {
println(Thread.currentThread().getName() + ” run “);
}
}, new Date(System.currentTimeMillis() + 2000));
}
}
Quartz 定時器實現
2.1 通過maven引入依賴(這裡主要介紹2.3.0) 注意:shiro-scheduler中依賴的是1.x版本 如果同時使用會衝突
!– —
dependency
groupIdorg.quartz-scheduler/groupId
artifactIdquartz/artifactId
version2.3.0/version
/dependency
2.2 創建Job類
public class TestJob implements Job{
@Override
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
println(Thread.currentThread().getName() + ” test job begin ” + DateUtil.getCurrentTimeStr());
}
}
2.3 調度任務
public static void main(String[] args) throws InterruptedException, SchedulerException {
Scheduler scheduler = new StdSchedulerFactory().getScheduler();
// 開始
scheduler.start();
// job 唯一標識 test.test-1
JobKey jobKey = new JobKey(“test” , “test-1”);
JobDetail jobDetail = JobBuilder.newJob(TestJob.class).withIdentity(jobKey).build();
Trigger trigger = TriggerBuilder.newTrigger() .withIdentity(“test” , “test”)
// 延遲一秒執行
.startAt(new Date(System.currentTimeMillis() + 1000))
// 每隔一秒執行 並一直重複
.withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(1).repeatForever())
.build();
scheduler.scheduleJob(jobDetail , trigger);
Thread.sleep(5000);
// 刪除job
scheduler.deleteJob(jobKey);
}
3.Spring 相關的任務調度
3.1 配置文件實現
spring-schedule.xml
task:scheduler id=”myScheduler” pool-size=”10″ /
task:scheduled-tasks scheduler=”myScheduler”
task:scheduled ref=”job” method=”test” cron=”0 * * * * ?”/
/task:scheduled-tasks
3.2註解實現
spring-schedule.xml
task:scheduler id=”myScheduler” pool-size=”10″ /
// 啟用註解
task:annotation-driven scheduler=”myScheduler”/
@Component
public class Task{
@Scheduled(cron=”0/5 * * * * ? “) //每5秒執行一次
public void execute(){
DateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
System.out.println(sdf.format(DateTime.now().toDate())+”*********B任務每5秒執行一次進入測試”);
}
}
原創文章,作者:RTWT,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/149221.html