而且都是get請(qǐng)求,參數(shù)都在鏈接上面;
現(xiàn)在只要把這個(gè)請(qǐng)求鏈接拷貝下來,另開一個(gè)頁面也是可以請(qǐng)求到數(shù)據(jù)的;
可以把權(quán)限信息放header里比如token
現(xiàn)在覺得這樣不安全,別人抓包就可以抓到數(shù)據(jù);
說實(shí)話,無論怎么樣都能抓,抓了就能發(fā),要保證鏈路中的安全可以上https。
請(qǐng)問有沒有其他更好的方式,在請(qǐng)求接口的時(shí)候做是否登錄校驗(yàn)?
這個(gè)接口能不能被匿名訪問,或者是否只能被特定用戶訪問,這是后端本該存在的功能,如果不是公共資源,是必須做登陸驗(yàn)證的,這不是可選項(xiàng)。
類中的靜態(tài)變量在程序運(yùn)行期間,其內(nèi)存空間對(duì)所有該類的對(duì)象實(shí)例而言是共享的,為了節(jié)省系統(tǒng)內(nèi)存開銷、共享資源,應(yīng)該將一些變量聲明為靜態(tài)變量。
代碼一:
public class MemoryTest {
static class Data{
private int week;
private String name;
Data(int i, String s){
week = i;
name = s;
}
}
Data weeks[] = {
new Data(1,"monday"),
new Data(2,"Tuesday"),
new Data(3,"Wednesday"),
new Data(4,"Thursday"),
new Data(5,"Friday"),
new Data(6,"Saturday"),
new Data(7,"Sunday")
};
public static void main(String[] args) {
final int N = 20000;
MemoryTest test = null;
for (int i = 0; i <=N; i++) {
test = new MemoryTest();
}
System.out.println(test.weeks.length);
}
}
代碼二:
public class MemoryTest {
static class Data{
private int week;
private String name;
Data(int i, String s){
week = i;
name = s;
}
}
static Data weeks[] = {
new Data(1,"monday"),
new Data(2,"Tuesday"),
new Data(3,"Wednesday"),
new Data(4,"Thursday"),
new Data(5,"Friday"),
new Data(6,"Saturday"),
new Data(7,"Sunday")
};
public static void main(String[] args) {
final int N = 20000;
MemoryTest test = null;
for (int i = 0; i <=N; i++) {
test = new MemoryTest();
}
System.out.println(test.weeks.length);
}
}
應(yīng)該發(fā)現(xiàn)上面那兩個(gè)類的區(qū)別吧
Data weeks[] 與 static Data weeks[]
代碼一會(huì)在內(nèi)存中保存20000個(gè)weeks的副本,而代碼二則在內(nèi)存中保存1個(gè)weeks的副本,然后共享該副本,這樣的話就不會(huì)造成內(nèi)存的浪費(fèi)。
雖然靜態(tài)的變量能節(jié)約大量的內(nèi)存,但是并不是所有的地方都適合用,建議在下列條件都符合的情況下,盡量用靜態(tài)變量:
(1)變量所包含的對(duì)象體積較大,占用內(nèi)存較多。
(2)變量所包含的對(duì)象生命周期較長。
(3)變量所包含的對(duì)象數(shù)據(jù)穩(wěn)定。
(4)該類的對(duì)象實(shí)例有對(duì)該變量所包含的對(duì)象的共享需求。
如果變量不具備上述特點(diǎn),建議不要輕易使用靜態(tài)變量。
最后,再提一點(diǎn)內(nèi)存的優(yōu)化,就是有關(guān)對(duì)象的重用,比如:對(duì)象池和數(shù)據(jù)庫連接池等。那樣的話,是很節(jié)約內(nèi)存空間的,不過,在用的時(shí)候要考慮各個(gè)方面,比如:運(yùn)行環(huán)境的內(nèi)存資源的限制等。為了防止對(duì)象池中的對(duì)象過多,要記得清除。
Java8新增了字符串處理的類 StringJoiner ,新提供一個(gè)方法String.join當(dāng)然實(shí)現(xiàn)也是 StringJoiner 看起來視乎有點(diǎn)類似Guava中的字符串處理類,使用StringBuilder或者StringJoiner不要使用 +
原來兩個(gè)參數(shù)不能寫一個(gè)名字
@Param("timestamp") Date start,@Param("timestamp") Date end
改為
@Param("start") Date start,@Param("end") Date end
就可以了
柯里化(Currying)是把接受多個(gè)參數(shù)的函數(shù)變換成接受一個(gè)單一參數(shù)(最初函數(shù)的第一個(gè)參數(shù))的函數(shù),并且返回接受余下的參數(shù)且返回結(jié)果的新函數(shù)的技術(shù)。
dubug可以發(fā)現(xiàn),調(diào)用curring()方法獲取currPrice對(duì)象時(shí),函數(shù)內(nèi)部相當(dāng)于將result設(shè)為currPrice函數(shù)的一個(gè)成員變量,這時(shí)currPrice對(duì)象已經(jīng)不會(huì)變了,每次apply只時(shí)調(diào)用currPrice對(duì)象的fn方法,所以result可以把a(bǔ)pply的值保存下來,再具體的原理就不清楚了,希望有大神解答。
File->Project Structure下面配置下sdk
/[^\w]/g
api1不支持錄制的同時(shí)調(diào)用onPreviewFrame。錄制時(shí)預(yù)覽功能由mMediaRecorder.setPreviewDisplay(mPreview.getHolder().getSurface());
也就是說,錄制時(shí)預(yù)覽由MediaRecorder完成。
要實(shí)現(xiàn)錄像的同時(shí)有回調(diào),只能用camera api2.
api2的實(shí)現(xiàn)就很容易了,自己百度一下吧。
jdk是開發(fā)環(huán)境,jre是運(yùn)行環(huán)境,如果你要在這個(gè)系統(tǒng)里進(jìn)行java開發(fā),裝jdk就行了,可以不裝jre,jdk中有個(gè)目錄就是jre,如果你只想在系統(tǒng)中運(yùn)行java編輯后的代碼,只安裝jre就行了。
鑒于谷歌大佬去年好像搞了個(gè)去除水印大法On the Effectiveness of Visible Watermarks。個(gè)人認(rèn)為直接顯式添加水印方式保護(hù)性一般。
不知題主有沒有考慮用數(shù)字水印。這種水印的好處就是對(duì)原圖影響小,而且不容易被抹去,魯棒性強(qiáng)。
使用request.getParameterMap()返回Map集合,key為name屬性,value為String數(shù)組
spring默認(rèn)使用的是單線程executor,應(yīng)該不會(huì)有第一個(gè)沒執(zhí)行完就執(zhí)行第二個(gè)這種情況發(fā)生?;蛘吣憧梢哉蟩uartz: https://docs.spring.io/spring...
Set的特點(diǎn)是去重,key不能重復(fù)一定沒問題。有一個(gè)點(diǎn),如果進(jìn)入Set的key是String類型,看看Set都做了些什么,首先對(duì)key做了一個(gè)hash計(jì)算拿到一個(gè)hashCode值,Iterator keys做equals比較,如果返回true那么這個(gè)key就放不進(jìn)去了,達(dá)到了去重的效果。如果進(jìn)入Set的key是一個(gè)對(duì)象呢,都知道new一個(gè)對(duì)象,他們?nèi)绻嗟饶敲磆ashCode一定也相等,equals肯定也是true,可JVM不吃這套,定義了每個(gè)new出來的對(duì)象都是獨(dú)一無二的,這就導(dǎo)致了equals 返回false,那么Set可以放下Dog對(duì)象,因?yàn)槟闱昂蠓湃氲氖莾蓚€(gè)Dog對(duì)象,而不是一個(gè)Dog類。希望可以幫到你,問題的地方,歡迎大神們拍磚指正!
你可以將jdbc.yaml文件命名為application-jdbc.yaml。
在啟動(dòng) spring-boot 時(shí)設(shè)置 jvm 參數(shù) -Dspring.profiles.active=jdbc 即可,這樣 spring-boot 會(huì)加載 application.yaml 配置文件和對(duì)應(yīng)的 profile 配置文件。
多個(gè)profile采用英文逗號(hào)分隔
$ java -Dspring.profiles.active=jdbc,jdbc2 -jar [xxx].jar模塊大概沒什么密集型,但我猜你要問的,是IO。
這種方式是可以的,就象第三方登錄,你的執(zhí)行方式還是前臺(tái)請(qǐng)求后臺(tái)api,后臺(tái)在請(qǐng)求第三方登錄接口,再根據(jù)第三方授權(quán)返回的用戶openid存入對(duì)應(yīng)的用戶賬號(hào)內(nèi)進(jìn)行關(guān)聯(lián)識(shí)別,所以完全可以
前端連接當(dāng)然可以,這個(gè)就基于你的業(yè)務(wù)邏輯,如果業(yè)務(wù)邏輯不需要對(duì)獲取的數(shù)據(jù)處理就不需要后端做中轉(zhuǎn),否則就需要后臺(tái)做中轉(zhuǎn)
如果網(wǎng)絡(luò)正常,執(zhí)行時(shí)間短,是可以忽略中間傳輸時(shí)間的
objectMapper.enable(WRITE_BIGDECIMAL_AS_PLAIN);
請(qǐng)參考如下配置,添加 CorsFilter
@Bean
public CorsFilter corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", buildConfig());
return new CorsFilter(source);
}
private CorsConfiguration buildConfig() {
CorsConfiguration corsConfiguration = new CorsConfiguration();
corsConfiguration.addAllowedOrigin("*");
corsConfiguration.addAllowedHeader("*");
corsConfiguration.addAllowedMethod("*");
return corsConfiguration;
}可以微信開發(fā)者工具中查看獲得權(quán)限,是否真的配置是有效的
請(qǐng)先查看 8080 端口是被哪個(gè)程序占用了。具體可參考: https://jingyan.baidu.com/art...
查到后關(guān)閉它或是直接修改你服務(wù)的端口都可以。
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國制造2025”,實(shí)現(xiàn)中華民族偉大復(fù)興的升級(jí)產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。