上面的代碼有些問題,并沒能真正結束線程。稍微改下就可以了
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
try {
System.out.println(Thread.currentThread());
Thread.sleep(6000);
} catch (InterruptedException e) {
e.printStackTrace();
**return;**
}
System.out.println("任務繼續(xù)執(zhí)行..........");
}
});
System.out.println(Thread.currentThread());
thread.start();
TimeUnit.SECONDS.timedJoin(thread, 3);
if (thread.isAlive()) {
thread.interrupt();
throw new TimeoutException("Thread did not finish within timeout");
}
如果,不加return,將會輸出"任務繼續(xù)執(zhí)行.........."
version: '2'
volumes:
data:
external: true
services:
test:
image: alpine
container_name: c_test
command: /bin/sh
tty: true
volumes:
- "${MY_DOCKER_DATA_PATH}":/tmp
這樣就會存放在當前 ./data這個目錄下
有很多好東西可以做數(shù)據(jù)庫相關的操作。
另外,main方法的args是可以傳參數(shù)的。你可以把參數(shù)傳入,然后用最笨的辦法把參數(shù)和SQL用String.format組合起來。
比如通過args傳入的參數(shù)是ABC,代碼可以是如下這樣寫:
String.format("select * from table where name=%s and age=%s and sex=%s", A, B, C)測試了下 好像在html頁面中確實無效,但是如果在.vue文件中有效...
但是當我在.vue中使用之后,繼續(xù)在html中使用的時候 發(fā)現(xiàn)又有用了 emmm
....
$.ajax({
type : 'post',
url : 'test.php',
data : JSON.stringify({
Data : {
Mark : 4,
PhoneNumber : 12312312312
}
}),
success : function(res){
console.log(res);
}
});
這樣試試以fastjson為例:
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.17</version>
</dependency>
以javascript為例:
<script>
var data = '{"綜合指數(shù)分析":{"預測分析":{"預測模型":"y=indexper"}}}';
var jsonStr = JSON.parse(data);
console.log(jsonStr["綜合指數(shù)分析"]);
</script>
提問題也是一種水平的提現(xiàn), 問javascript怎么解析json,打個java標簽,讓人看著就不想答,而且還想踩你一下。
你不會java和javascript分不清吧???
一切從最低硬件成本開始,但是要獨立,否則遇到問題沒辦法
1、RDS直接買阿里云的RDS最低版本開始
2、GIT服務器、centos、使用Gogs
3、測試服務器、
4、正式服務器
5、負載均衡 下面帶正式服務器(防止流量上來 可以用彈性伸縮)
6、部署可以用GIT分支, 部署的時候就創(chuàng)建一個分支,服務器拉下來分支就行
7、推薦程序,大家共用數(shù)據(jù)庫/或者開推薦程序的接口
剛買了新鍵盤打字下。。。哈哈哈哈
synchronized的是對象(即"lock"),而不是對象的引用。
當你同時啟動3個線程時,可能都synchronized到了"lock"。要想得到你的預期(即synchronized到不同的對象),可做兩點改動:
String lock前加上volatile關鍵字,保證引用的改變對其他線程是可見的;synchronized (lock)前隨機等待若干毫秒,讓各線程不同時跑到synchronized,比如這樣: private AtomicInteger counter = new AtomicInteger(0);
private void method() {
Thread.sleep(counter.addAndGet(100)); // 這里還要catch一個InterruptedExxception
synchronized (lock) {
...
}
}
renderJson(all) 應該會得到 [[{"name":"tom"}],[{"name":"tom"}]], 然后你在前臺JavaScript 中let all = JSON.parse('[[{"name":"tom"}],[{"name":"tom"}]]') 就可以得到相應的結果。
不懂spring mvc,但是spa的頁面后臺服務應該全定向到靜態(tài)頁面文件(xx.index.html)的地址吧。404交給前端來做。
大哥,你都拿到token了,再把token按照你們系統(tǒng)的轉化規(guī)則轉化為user對象返回即可。
第一種:
@PostMapping("add")
@ResponseBody
public Comment commentAdd(@RequestBody CommentAddVO VO, HttpServletRequest request) {
String headerToken = request.getHeader("token");
User user = .....;//把token轉化為為user對象
Comment comment = comRep.save(VO.toComment(user));
//獲取所有說說
return comment;
}
如果你嫌這種麻煩,你可以寫基礎的controller,比如類名是BaseController。你的controller繼承這個BaseController,把獲取user邏輯寫個方法放在BaseController中,用到user的時候調用一下就可以了。
第二種:用你的UserUtil
public class UserUtil {
public static User getUser() {
//獲取到當前線程綁定的請求對象
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
String headerToken = request.getHeader("token");
User user = .....;//把token轉化為為user對象
return user;
}
}
@PostMapping("add")
@ResponseBody
public Comment commentAdd(@RequestBody CommentAddVO VO) {
String headerToken = request.getHeader("token");
User user = UserUtil.getUser();
Comment comment = comRep.save(VO.toComment(user));
//獲取所有說說
return comment;
}
第三種:如果一定要按照你的方式,傳入user對象。
就按照上面老兄說的,自己寫個過濾器或者攔截器獲取下token,然后轉化為user對象,然后放到request中去。
個人感覺問題出在Session更新這塊,登錄認證成功后,shiro會對session進行更新,session內保存用戶的認證信息,看你現(xiàn)在更新session,只是處理了最后登錄時間,建議嘗試將整個session進行更新試下;直接把redisTemplate.hasKey(key)判斷注釋掉看看
你把location拆一下不就好了么...
var lng = locationStr.split(',')[0];
var lat = locationStr.split(',')[1];
var point = new BMap.Point(lng, lat);我不是代碼的作者,我只是代碼的搬運工
ActionEvent event;
long when;
when = System.currentTimeMillis();
event = new ActionEvent(button, ActionEvent.ACTION_PERFORMED, "Anything", when, 0);
for (ActionListener listener : button.getActionListeners()) {
listener.actionPerformed(event);
}
第一個問題:是的
第二個問題:官網(wǎng)上有提示。
第三個問題:比如裝java。官網(wǎng)下要配環(huán)境。brew不用
用于匹配從>到末尾的部分吧。。。沒有這個[^>]*就出錯了
regexp1=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/
regexp2=/^(?:\s*(<[\w\W]+>)|#([\w-]*))$/
regexp1.test('<div>...')
//true
regexp2.test('<div>...')
//false在后端轉換才安全,前端任何規(guī)則都是可以繞過的
按我的理解:
在AndroidN前 如果你的Context 不是Activity 并且沒有使用FLAG_ACTIVITY_NEW_TASK ,則 會禁止啟動,并向系統(tǒng)輸出日志
而Android N中 這個FLAG沒有生效,導致了與預期不同的結果,而目前修復了這個bug
我會寫在一個組件中,左側是一個 tab,右邊是動態(tài)組件,
<template>
<div class="tabs">
<tab-item
v-for="tab in tabs"
@click.native="onTabClick(tab)">
</div>
<components :is="currentTab.component">
</template>
<script>
export default {
data() {
return {
tabs: [
{
name: 'a',
component: 'cpA'
}
],
currentTab: {
name: 'a',
component: 'cpA'
}
}
},
methods: {
onTabClick(tab) {
this.currentTab = tab
}
}
}
</script>
簡單幫你擼了一下,差不多就是這樣。
這里就是你的父項目的相關信息,有時還有個relativePath指定父項目的pom.xml文件。
舉個例子,我創(chuàng)建了個項目cloud-demo,它的pom.xml配置為:
<project>
...
<groupId>com.example</groupId>
<artifactId>cloud-demo</artifactId>
<version>1.0-SNAPSHOT</version>
...
<!-- 子模塊 -->
<modules>
<module>server-module</module>
</modules>
...
</project>
然后,在該項目下創(chuàng)建子模塊server-module,那么子模塊中應該是這樣寫:
<project>
...
<artifactId>server-module</artifactId>
<version>1.0-SNAPSHOT</version>
...
<parent>
<groupId>com.example</groupId>
<artifactId>cloud-demo</artifactId>
<version>1.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
...
</project>北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達內教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構,是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學校辦產業(yè)為響應國家深化產教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復興的升級產業(yè)鏈。利用北京大學優(yōu)質教育資源及背
博為峰,中國職業(yè)人才培訓領域的先行者
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經理職務負責iOS教學及管理工作。
浪潮集團項目經理。精通Java與.NET 技術, 熟練的跨平臺面向對象開發(fā)經驗,技術功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經驗。曾經歷任德國Software AG 技術顧問,美國Dachieve 系統(tǒng)架構師,美國AngelEngineers Inc. 系統(tǒng)架構師。