网络捕鱼赢现金游戏在intellij中打jar包,运行提示没有主清单属性

( 网络捕鱼赢现金游戏 )

在Intellij中通过Project Structure – Artifacts打jar包,每次java -jar运行时候总是提示没有主清单属性。查看Manifest.mf文件里面确实没有Main-Class.
但是我在打jar包的时候已经指定了MainClass了。
请问有什么方法能够不用手动添加MainClass属性呢? 谢谢

用maven打包

如果项目中引用的Jar包有签名过,最后打包成的Jar包运行时会抛出错误:
“java.lang.SecurityException: Invalid signature file digest for Manifest main attributes”

可能是 IntelliJ 的问题。
在 Project Structure – Artifacts 里面选好 Main Class 之后,IntelliJ 会自动在下边的 Directory for META-INF/MANIFEST.MF 里填上 /$PROJECT_DIR/src/main/java
把这行里边的 main/java 删掉,变成 /$PROJECT_DIR/src/ 试试

(看完/读完)这篇文章有何感想! 网络捕鱼赢现金游戏的分享…

捕鱼平台能换现金的springmvc 路径匹配

( 捕鱼平台能换现金的 )

dispatcher拦截格式设置为*.do
filter格式设置为abc(工程名)/*
前端是spa的设计,所以现在出现一个问题,前端自己跳转的url是/abc/a这种样式的,没有后缀,因而如果刷新一下就会404,暂时性的方法是把唯一的页面配置到error404里去,就是本质上是404,但是设置跳到了正确页面,可是总是觉得不是正确的做法。
尝试了一下另一个方法,把dispatcher拦截格式设置为/,然后将静态资源配置成多个default,filter也改成.do,这样做的话,再设置一个通用的控制器,requestmapping为”/**”,将接到的请求直接转到唯一的页面,这样出现的问题是,接收不到/abc/a这样的请求,只能将requestmapping改成/abc/a的样式,才可以接收到请求。不是很明白是哪里错了,而且,就算可以请求到,前端的页面的自跳转,也需要我写多个控制器,感觉不是很科学。
希望有spa经验的前辈可以说下是怎么处理前端页面跳转的。
(前端自己控制页面的跳转,后台通过ajax请求和前端交互数据,但是前端的页面跳转需要后台帮忙返回个页面,否则404)
补充:设置的filter,使用的是HandlerInterceptorAdapter,配置了mappingurl为*.do,但是会把诸如/abc(工程名)/a 这样的url也过滤进去。不知问题何在

自己测试了,给个自己的判断,如果有错误,欢迎指出
拦截器的mapping,应该还是在dispatcher的基础上做的,即:只有符合了dispatcher配置的url规范,才能被拦截器去拦截进行判断。依据是:我修改了配置的servlet-mapping,从/改成*.do 以后,拦截器还是保留*.do,但是这时,就不会再拦截没有后缀的url请求了;但是如果servlet-mapping 改回/的话,拦截器配置urlmapping不变,还是*.do,可是拦截器还是会拦截所有的url请求,包括*.do和普通无后缀的url请求。
7.27最新解决办法

修正自己的回答,之前是使用的注入拦截器的方法,在DefaultAnnotationHandlerMapping配置下,使用了<property name=”interceptors”>,<ref bean=“myInterceptor”>的方法对拦截器进行了注入,因而,就算我在myinterceptor这个bean中配置了拦截的url路径,他也会对所有的路径进行拦截,这是失败原因。解决方法是使用<mvc:interceptors>进行配置,然后在其中写入<mvc:interceptor>,并配置需要拦截的路径,这样一来,就不会拦截我不需要的路径,至此,问题解决,记录下。 | 添加代码

(看完/读完)这篇文章有何感想! 捕鱼平台能换现金的的分享…

捕鱼平台能换现金的数据库表结构设计

( 捕鱼平台能换现金的 )

业务需求描述如下:

如上图所示,定义了一组规则,有区域规则,城市规则,机房规则,数量规则,比例规则,类型规则。设置规则的时候,可以将上述规则进行组合,生成一条规则集(由上述规则并集得到)。那么这样可以编辑好多规则集,形成一个list列表。如下图所示:

那么我们定义的规则集就可以生成一组的规则集列表,当生成一个订单,用户可以填写一些规则,那么服务端根据传过来的规则,匹配规则列表中的规则,选择出一堆否和条件的规则,然后按照优先考虑不同快递公司,优先某几种规则,来进行匹配相应的规则,进行物流配送。

请问这个相关的表结构该如何设计?

PS:我的表结构设计是这样的:
条件表 规则表
1.条件表中,存放单独的规则条件,他们可以组合成一条规则集。
2.规则表中,存放组合好的规则。

当web端,选了相应的规则之后,我先将前端的规则进行拆分,从条件表中分别进行匹配,然后匹配得到各种集合,然后用SQL中的in语句,拿得到的这些集合去规则表中去匹配。

第一个问题:
总觉得这样设计效率不高?有没有更好的方案呢???

PS:在表结构设计中,类似这种问题叫作:java 规则引擎设计。运用场景还是蛮广泛的,比如,好多电商都有风控的场景,就是一些规则来判定他的一个订单是不是刷单,它会有很多规则,那么根据一条订单的特征,生成一组规则组合,然后用订单规则匹配规则组合,算出当前的订单有多大概率是刷单的,如果刷单概率太大,就到人工审批环节,人工确认刷单后,对相应的商家要进行封号处理。

所以,第二个问题:
特别好奇一些电商或者O2O平台的,风控规则是如何设计和实现的呢?

===============================================================================
后期的发展是这样的,需求方做了让步,不想让80%的工作量带来10%的价值,所以修改了规则匹配算法,只做最精确匹配,匹配失败就不匹配了。

感谢邀请。@菩提旭光
对于问题1,说说我粗鄙的一些看法,我觉得你的设计是没有问题的。
表1:规则表
表2:规则集表
表2每一条记录时表1里的规则任意组合而成
假设表2中有一天记录是规则1和规则4组成,那么我们可不可以在表2中既存表1的规则描述又存表1的id呢,形如
规则ID 规则描述
1 数量>100
2 数量>10
3 本地
4 异地
规则集ID 规则集描述 规则ID连接
1 数量>100 异地 14
2 数量>10 本地 23
当然前提是表2中规则ID连接一定要从小往大旁,这样我们在查询的时候不要用like或者in了,直接用=,效率会更高吧。当然这个也是有一定弊端的,当规则改变之后,规则ID连接也需要跟着变动了

不知道我理解有没有问题。

我的思路是,
rule表

(id,
rule_name,      //规则名
rule_para,      //规则参数,根据不同的规则要求放入参数 
rule_action,    //规则索要响应的方法[number,sameCity,..]
rule_type,      //规则类别 [1=>区域,2=>城市,3=>数量]
start_time      //开始时间
end_time        //结束时间
status          //是否启用 
)

rule_list 表 就是存放规则集的关联性,也可以起一个关联表,

然后可以在代码里面创建一个rule class 如果rule很多的话可以为城市规则,区域规则..分别建个class(这里的话就要将上面的rule_type存为对应class的名字),里面对应的方法就是表内存的要响应的方法,接收的参数是规则参数,然后具体逻辑写在方法内。

我第一个想法是这样的,感觉还不够成熟,不知道这样设计怎么样。

这里有个疑点,如果总共有4个规则,那么服务端的规则集列表就会有 4 * 3 * 2 * 1个规则集,如果有n个规则,那么服务端的规则集列表就会有n!个规则集。排列组合,产生的数目可能很大。这样是否是合理的。

这个问题我还是没看明白,我理解的就是拼SQL语句的问题,根据规则拼SQL,然后用这条SQL去表里查,好像跟表结构设计没什么关系。

简单的想法
规则类型表(没什么变化的话,可以放在静态字典里面)
id 规则类型
1 数量
规则表
id 规则类型ID 规程名称
1 1 数量大于100
物流匹配规则表
id 物流ID 规则ID 优先级

查询时
通过查询规则ID in(规则ID) in 效率不高可以改成exists
统计物流ID的个数,达到最优选择,如果有优先级,可以加条件进行判断,如 异地 某个物流根本不送

想法不是很成熟,
或者物流匹配规则表 每条记录里面是多个规则的,也可以,就是优先级不好判定

![表图片][1]

我觉得可以使用3张表
表1. 定义规则的元数据,比如某个规则是对城市的限制,是个枚举类型,另一个规则是对机房数量的限制,是数值型,字段可以是:规则id,类型,取值范围等
表2. 定义物流商和规则的映射关系,字段可以是:物流商id,规则id,规则值
表3. 定义用户订单,描述的是用户选择的规则列表,字段可以是:订单id,规则id,规则值等,一个订单可以有多条规则对应,用订单id可以查询出所有相关的用户指定的规则。

然后程序可以通过用户订单的规则列表去第二张表里找到最匹配的物流商。

回答你,我的见解:
web端要单独展现规则集的,规则集跟订单是分离的。当订单去选择物流配送的时候,才会去匹配规则集。至于表2,感觉没必要啊,物流商和规则的匹配高一个加权的轮询策略就好了,不用单独设计表,查表的效率一般都是很慢的,尽量做到再保证实现功能的同事,设计尽量少量的表。

(看完/读完)这篇文章有何感想! 捕鱼平台能换现金的的分享…

捕鱼平台能换现金的关于mybatis和hibernate的困惑

( 捕鱼平台能换现金的 )

  • 由于java视频里以前好多都是SSH。但是在实际工作中没见过用hibernate的,基本都用mybatis。

  • 我有一些疑问:

    • hibernate碰到什么样的业务会变成致命的弱点,都说hibernate效率低,能否举个例子(例如同一个查询用mybatis查询耗时1秒,用hibernate查询耗时10秒)

    • 可能是有部分人遇到了hibernate的瓶颈,但是这部分人的业务量我觉得,不是大部分使用hibernate的人都能遇到的。一般的小项目,不超过100个用户,这样的项目综合考虑的话更适合用mybatis还是hibernate?主要从开发效率上来说的话。为什么?

谢谢

hibernate适合于都是单表的增删改差,开发效率很高,可是一旦业务扩展或者当初db设计不好,需要连表查询(因为hibernate的思想是对表的类化,但实际生活中要做到完全的类化在一个项目刚开始的时候是不容易做到的)不同的结果再加上删选匹配的话效率就会下降(除非你写sql,但是这样一来还不如一开始用mybatis),尤其再遇到大数据量,效率成倍数下降。
不超过100个用户?,这里的数量级不是按单表算的,单表如果超过一定数据量也不是简单选用hibernatemybatis能解决的,只能说如果用mybatis的话比较好改而已。就我经验,如果涉及大量连表查询且业务复杂的时候(通常项目到最后都是如此)最好用mybatis,简单的还是hibernate快一些(开发效率

hibernate学习成本比较高,但是j2ee里头有JPA规范,学习规范也还可以。mybatis就相对来说简单,容易上手,可控。hibernate学习成本高,过度面向对象,难以调优。至于使用的话,看个人了,对于toB或者toC的应用比较偏向mybatis,但是对于做管理后台这种,hibernate就可以

谢邀!下面的回答说的都挺好的,一是MyBatis学起来简单,二是灵活,直接写SQL易于掌控,至于性能都不是什么重点,开发效率、可维护性什么的比性能要重要的多。

hiberbate是用java对象拼sql,mybatis是直接写原生sql。前者开发一时爽,(修改)维护火葬场;后者需要对sql知识有一定了解(相比前者),如果公司有DBA的话,他看原生sql比看java代码要直观得多。至于性能什么的大部分情况下都不用考虑(真要考虑的话可以去搜一下近年来有些人讨论过的“去ORM”),最重要的是可维护性可维护性可维护性。

hibernate、mybatis都只是对JDBC的封装,程序性能好不好,主要还是看SQL写得够不够优秀,DB设计是不是合理,当然hibernate不少SQL是用程序方式实现的,如果两个框架都很精通,使用起来性能上差别应该不大,那么问题来了,hibernate封装程度过高,想精通其实是挺困难的,mybatis则只是jdbc的简单封装,学习成本较低,而且hibernate很多场景下将sql封装起来了,如果不是特别精通的话,有些时候写出来的程序会出现预料不到的情况,mybatis则因为较简单,也没做太多的事,所以程序运行结果通常比较容易预料到可能出现的问题。
两个框架其实设计都很优秀,个人使用习惯反而更重要,习惯于mybatis的人,一般很难会再切换到hibernate的,反之如果真正精通hibernate的人,应该也不会刻意去使用mybatis(个人愚见)。

实际工作中都使用Mybatis基本上并不是基于性能或者可用性上的考量,而是基于个人习惯。
像我们这些老程序员,写SQL习惯了,不写就难受。相比之下过于自动化的hibernate会让我们感到恐慌。
仅此而已。

学习阶段使用过,hibernate 个人的感受是封装的太死了。很多时候感觉带来的不是方便,而是我要为了“配合”这个框架做一些看起来不必要的操作。

业务量比较小的话,就看你个人哪个比较熟练了。都可以。没必要为这个纠结。mybatis的灵活性要高些,给开发人员更多自己实现的空间。hibernate的关联应该是稍慢一点的原因。

知乎上也有类似的问题
看到高票的回答大致就是说,hibernatemybatis掌握难度要高一些,对sql的控制弱一些。

mb sql写到xml里面不也需要解析么,效率也高不到哪里去吧

对比这两个之间的关系,从开发效率、可维护性、性能三个方面给出考虑。而就其重要性而言,在项目工程开发过程中,开发效率>可维护性>性能。可能对于某些业务来说,性能更关键,但放眼全局,个人觉得开发效率>可维护性>性能。

首先来说,开发效率。个人感觉如果你是做一些简单的CMS类似的只有简单的增删改查的项目,那么使用Hibernate更有优势,不需要掌握太多的Hibernate知识,只需要会一些基本的查询和一些配置(Hibernate真正要学会,个人感觉知识量比mybatis大很多)。hiberbate是用java对象拼sql,mybatis是直接写原生sql。hibernate提供了很好的映射机制,mybatis还需要自己写resultmap paramMap这些东西。Hibernate和MyBatis都有相应的代码生成工具。可以生成简单基本的DAO层方法。针对高级查询,Mybatis需要手动编写SQL语句,以及ResultMap。而Hibernate有良好的映射机制,开发者无需关心SQL的生成与结果映射,可以更专注于业务流程。综上所述,那么从开发效率上来讲,Hibernate> mybatis。

可维护性:hiberbate是用java对象拼sql,mybatis是直接写原生sql。直接写SQL更容易维护,而前者需要通过java对象来看SQL,你得把sql,用System.out.println(sql);把SQL打印出来,才可以看到。Hibernate的查询会将表中的所有字段查询出来,这一点会有性能消耗。Hibernate也可以自己写SQL来指定需要查询的字段,但这样就破坏了Hibernate开发的简洁性。而Mybatis的SQL是手动编写的,所以可以按需求指定查询的字段。Hibernate HQL语句的调优需要将SQL打印出来,而Hibernate的SQL被很多人嫌弃因为太丑了。MyBatis的SQL是自己手动写的所以调整方便。但Hibernate具有自己的日志统计。Mybatis本身不带日志统计,使用Log4j进行日志记录。

性能:两者都提供了缓存,session机制。小项目两者差不多吧.大型项目mybatis>hibernate。

看大家讨论感觉mybaits更好一样,但当初一直以为hibernate更适合大型开发就直接走hibernate了。那时项目比较急,用得像mybatis一样,后来玩久了,发现很多有趣的东西,hibernate提供的经验简化了不少工作量和兼容性,但这些绝对需要有经验后才明白,加上后来有用上了hibernate search,全文检索,也就没法换了,反正写原生sql也可以hql也可以,xml配置工具也有,辅助注解也灵活,甚至还能产生原生sql不一样的one2many,many2many数据结构,总之就是太全面的一个大家伙了,还没遇到后悔的时候,就继续学吧。一般是用hibernate tools自动创建所有表的Java和xml的mapping做一般查删改,然后复制Java代码改名,用注解手工建关联,删除不需要的字段。

1. 问题1:什么样的情况下,Hibernate 会慢MyBatis10倍?

当Hibernate用错了的情况下,会出现:P
比如, Hibernate的对象A里的内嵌对象B加载被你从默认懒加载改为预加载(假设你没有搞懂影响,就改动了配置), 你要查询对象A的列表,就会出现N+1查询, 但你的大部分业务逻辑又不需要读取内嵌对象B,性能就会很差.
而一般情况下MyBatis, 这种查询是需要手写的. 出现这种情况的概率较小.

JPA(Hibernate)的内容涵盖真的很广,有很多优化技巧.想玩熟要花的成本不低.(我手头上那本Hibernate In Action厚度很的让人望而生畏, 花了好久才看完), 不知道有多少程序员是爱看书的且有这个耐心.

但是,MyBatis上手要容易多了. 虽然MyBatis在用错的情况下.性能会同样比Hibernate差好多倍.但MyBatis没那么复杂啊. 那出错的几率就小很多了.

2. 问题2:小项目用MyBatis还是Hibernate?

如果你对Hibernate很有研究兴趣,且想把他用熟.我建议拿你就试试呗. 毕竟大多数的项目是需要快速出成果的.
Hibernate在这方面比MyBatis简单多了(当然MyBatis有自动生成代码的方法,但相比还是麻烦不少).
如果后续项目发展的不错, 需要多人协作开发, 请务必让新手远离持久层代码逻辑.

简单来说,Hibernate 是面向对象的,MyBatis 是面向 SQL 的。选哪个得看你的人员配置对哪个熟悉,业务会不会有很多复杂查询,对性能要求高不高。另外,很多时候都是对 Hibernate 不熟悉,所以会觉得 Hibernate 做不了这个事情,或者做起来很复杂。Hibernate 表示这锅我不背。。。

个人还觉得hibernate 好用呢,自动建表,性能问题是关联查询。

现在开发一边采用逻辑外键,不进行表关联,开发效率都差不多,mybatis简单,清晰,sql更具通用性,协作稍微方便点.

技术没有好坏,只有适不适合,在特定的情况下解决特定的问题。不同的人用hibernate,会产生不同的结果,如果你精通hibernate,性能一样不是问题。看到楼上说了那么多二者的比较,其实真的没有什么意义。

总的来说hibernate不够灵活,封装的太深了。mybatis可以随心所欲的配置想要的操作

可以尝试下:http://www.oschina.net/p/monalisa-core 配合Eclipse的插件使用更方便:

  • 支持自动生成DTO

    SQL查询无需像Mybatis那样要写DTO,然后再配置一堆的字段mapping了, 插件全部帮你自动搞定.
    参考文章: 如何根据动态SQL代码自动生成DTO

  • 多行字符串语法

    在Java代码里面书写多行字符串变得非常轻松。

  • DataTable操作

    DataTable可以像用SQL来查询数据库表一些方便的进行字段选择,过滤,聚合,分组,JOIN等

(看完/读完)这篇文章有何感想! 捕鱼平台能换现金的的分享…

网络捕鱼赢现金游戏idea 多个module debug有问题

( 网络捕鱼赢现金游戏 )

有两个module,M1、M2。在M1里打断点,执行后会跳到M2中,请问如何解决?
我有两个独立的project,想把这两个project当作module放在一个project中

有两个module,M1M2,按照楼主的的意思我猜测应该是M1会依赖M2,M2jar包的形式给M1提供服务.
楼主如果想直接debugM2jar,右击工程open module setting,把M2工程从dependencies中移除,改为依赖M2jar

多模块之间,pom文件要引入dependencies 0.0

请将相关的pom.xml配置信息贴出来

(看完/读完)这篇文章有何感想! 网络捕鱼赢现金游戏的分享…

手机捕鱼赢现金收获不菲作为java项目OutOfMemoryError怎么处理,不是javaweb,不是tomcat溢出?

( 手机捕鱼赢现金收获不菲 )

不是web项目,纯java项目
Exception in thread “main” java.lang.OutOfMemoryError: Java heap space

不同意 @方正 的意见,也看到过很多人一发生 OOM 就开始改动堆内存的大小,而且调整堆内存也未必是越大越好。

首先普及一下知识:

  • 堆内存分为新生代和老年代,新生代的用来存储经常要进行 GC 的对象,每个对象实例都会有个计数,都超过一定的时间仍未被 GC,就会晋升到老年代进行存储。

  • 老年代会比新生代的空间大一些。

  • 发生 OOM 都是老年代的内存不足(因为新生代的不足的情况下,会放到老年代进行存储)。

建议按照如下的方式进行分析,解决问题:

1.直接检查代码是否有问题,看看是否有死循环、集合未释放元素引用等内存泄露问题。

2.设置 JVM 参数 -XX:+HeapDumpOutOfMemoryError-XX:HeapDumpPath=<你的path>

3.采用内存映像分析工具(http://www.eclipse.org/mat/),分析到底是内存泄露还是内存溢出,内存泄露的情况下,找找泄露对象怎样和GC ROOTS 关联的,进而找到泄露代码的位置。

4.如果不存在内存泄露,结合机器的物理内存,看看是否还可以继续调大堆内存 (-Xms 和-Xmx),这里也注意一下,并不是堆内存设置的越大越好,因为很大的内存发生 FULL GC 的时候,会发送很长时间的 “stop the world”,这也不能接受的

简单的解决方式就是调整堆的大小
在Eclilpse中修改启动参数,在VM arguments 加入了-Xms384m -Xmx384m
或者
在tomcat的catalina.bat中加上-Xms384m -Xmx384m

不过,建议最好再检查检查代码

@letcheng 同意它的观点,你只是一个纯java项目,又不是web项目,你能创建多少对象,搞到堆发生OOM。所以,很大程度上还是你代码的原因。
JDK下,有自带的JConsole.exe工具,你可以观察下你当前有多少对象,堆内存有多少,是在什么时候多到发生OOM的呢。

这种问题,建议用findbug或者sonar等工具跑一下程序看看哪里有内存泄露导致内存溢出的风险

java.lang.OutOfMemoryError: Java heap space是堆内存的年轻年老态内存空间都用完时候就会抛,所以一般来说此问题主要是创建的内存无法回收,例如最常见的IO类用完后不做xx.close()

光是在TOMCAT配置大内存是不够了,需要找到源头,如果有内存泄露问题存在,用再大的内存也是没用

(看完/读完)这篇文章有何感想! 手机捕鱼赢现金收获不菲的分享…

网络捕鱼赢现金游戏关于java swing中的布局问题

( 网络捕鱼赢现金游戏 )

各位大哥
java界面用的是BorderLayout布局,怎么控制west center和east的宽度啊。最好是按比例 还有,我想把east区域分成上下两部分,应该怎么做?

setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
setPreferredSize(getSize());
.setPreferredSize需要在使用布局管理器的时候使用,布局管理器会获取空间的preferredsize

(看完/读完)这篇文章有何感想! 网络捕鱼赢现金游戏的分享…

网络捕鱼赢现金游戏spring返回视图的问题

( 网络捕鱼赢现金游戏 )

@RequestMapping()
    public String exercisePage() {
        return "/exercise/exercise";
    }
@RequestMapping(value = "/retrieve")
    public String deaRetrieve (HttpServletRequest request, Model model) {
        String system = request.getParameter("system");
        SSO sso = ssoService.selectSSO(system);
        model.addAttribute("sso", sso);
        model.addAttribute("tt", "tt");

        return "/exercise/test";
    }

spring mvc一旦返回一个视图(比如”/exercise/test”),浏览器的页面是否就会变为相应的视图?为什么我的程序没有看到效果?视图的路径应该没有问题,因为第一个处理请求的返回视图(”/exercise/exercise”),可以看到,但是是第二个就没反应,还是停留在第一个的页面上。

是不是 @Controller路径没对

打个断点,看有没有到那个方法里面。

(看完/读完)这篇文章有何感想! 网络捕鱼赢现金游戏的分享…

捕鱼平台能换现金的在网上打包的 android app,怎么样阻止 app 内部自动发出的 http 请求

( 捕鱼平台能换现金的 )

请问利用 httpdns 方式怎么样可以阻止 app 内的请求,或者可以修改它请求来的数据。app 是在网上自动打包生成的。jar 包反编译后有问题,可能加了混淆码。现在想用 httpdns 的方式阻止 app 自动发出的请求。

(看完/读完)这篇文章有何感想! 捕鱼平台能换现金的的分享…

捕鱼平台能换现金的现在移动端手机游戏已经不用c++开发了吗?

( 捕鱼平台能换现金的 )

c++号称高性能,至少pc端游戏c++是首选。
但是移动端上的游戏,都用native指定的语言(java,ios)开发吗?

你有认真的去了解吗?

稍大些的游戏都不会只用一种语言吧。
更别说了,安卓上难道用java去写游戏?

很多游戏都是cocos2d写的,我自己就写过一个c++开发的游戏,在自己的安卓机上运行

但凡是计算密集的领域, 特别是3D引擎之类的
天下武功, 唯有C艹

不过你要知道, 一个项目通常会在不同的需求和应用场合采取不同的解决方案(包括语言的选择)

游戏引擎基本都是C++开发的,包括移动游戏的引擎,但是游戏逻辑很多都脚本化了,lua/js/C#。

游戏引擎都是基于c++的

(看完/读完)这篇文章有何感想! 捕鱼平台能换现金的的分享…

捕鱼平台能换现金的spring 4 纯javaconfig配置的项目:注解@Pattern 里面的regexp如何引入properties的值 ?

( 捕鱼平台能换现金的 )

我使用的是spring 4 javaconfig配置没有任何的xml。
下面的代码:

@PropertySource(value = "classpath:valid.properties")
public class Role implements Serializable {

    @Id
    private String id;
    /**
     * 角色名称
     */
    @Pattern(regexp = "^[a-zA-Z0-9_]{6,32}$")
    private String name;

我在这个通过 @PropertySource 引入了properties文件
虽然可以通过@Value 来获取到properties的值 , 但是 regexp无论如何都无法写入properties的值编译都不能通过,到底该如何写 ?

类似下面的写法都不对 :

@Pattern(regexp = @Value("${name}"))
@Pattern(regexp = "${name}")

但是@pattern还有一个属性 message 就可以这样写 : message = “${name}”

regexp 该如何获取到properties的值 ?

我帮你问问朋友
http://www.yl1001.com/group_article/7001468401005683.htm?classic_id=7681468830725785#comment_7681468830725785
朋友说不太明白使用Pattern注解是想实现什么功能。可以在这个帖子下交流一下

(看完/读完)这篇文章有何感想! 捕鱼平台能换现金的的分享…

手机捕鱼赢现金收获不菲myeclipse中tomcat部署编译jsp页面后,浏览器显示中文乱码

( 手机捕鱼赢现金收获不菲 )

我就新建一个空的web工程,里面就一个index.jsp,然后我将其部署运行。以下是页面代码

以上代码就是index.jsp页面的。以下为在网上找了一点解决办法,tomcat server.xml中改的一部分

直接部署运行,浏览器就出现乱码了

我终于找到了问题的根本了。我用的myeclipse2016版的嘛,是ide的问题。

就是上图中把像眼睛一样的东西关掉,就可以了。如果还是不行,多试试几次。

ide的文件编码设置成utf8试试

看下tomcat的编码

<head>头部里要加一个编码标签:

<meta charset="utf-8" />

你这用的是eclipse打开的网站? 换个浏览器试试,如果遇到乱码,手动在浏览器里设置编码改成UTF-8看会不会正确显示。该改的都已经改了,应该不会有问题了

myeclipse的浏览器默认编码好像是ISO-8859-1还是西文什么的,具体忘记了,在浏览器右键设置编码能解决这个问题。不用自带的浏览器,其它的浏览器大多都可以自动识别编码,所以应该也不会出现乱码。

你这种不传参数的乱码,不需要更改tomcat的默认编码方式,只要设置了jsp的编码格式,再看下你eclipse的编码,基本可以解决你的问题

用自己的浏览器试一下,一般只要设置了jsp编码格式就没问题的

(看完/读完)这篇文章有何感想! 手机捕鱼赢现金收获不菲的分享…

网络捕鱼赢现金游戏互联网公司的application server哪个用的多一些?是不是都用Tomcat?

( 网络捕鱼赢现金游戏 )

互联网公司的app server都是用Tomcat吗?我估计BAT是,中小型互联网公司也用Tomcat吗?有用JBoss的吗?

我们的是小型互联网公司,Apache足以。Java系的后台维护成本太高,不敢轻易涉足,LAMP一人搞定。

我们用tomcat和jetty。

阿里的项目,我们现在用的是jetty

tomcat或者jetty

用 jetty

jboss,jetty

如果你只是想要一个servlet容器的话,tomcat够了,如果你还需要嵌入式的话,那就jetty,如果你想用java ee全家桶的话,比如什么jsf、jpa、CDI之类的,那就用jboss的,当然,现在是wildfly。

jboss 应该算是一个应用服务器,包含了很多东西,例如事物,队列等等
tomcat 是一个web服务器,实现 servlet 标准,是一个更轻量级的容器。一般的场景下使用 tomcat就够了

(看完/读完)这篇文章有何感想! 网络捕鱼赢现金游戏的分享…

网络捕鱼赢现金游戏为什么我的maven不开启我自己的tomcat,而是开启系统默认的

( 网络捕鱼赢现金游戏 )

我想进如这里

我在我的tomcat中配置了热处理,版本是7.0.61,但是我用maven run了之后一直显示的是别的版本,应该是自带的,只能办?

(看完/读完)这篇文章有何感想! 网络捕鱼赢现金游戏的分享…

网络捕鱼赢现金游戏正则表达式匹配最里层括号的内容

( 网络捕鱼赢现金游戏 )

现在有一个字符串:

str1 = '(subject_id = "A" OR (status_id = "Open" AND (status_id = "C" OR level_id = "D")))'

或者

str2 = '(subject_id = "A" OR subject_id = "Food" OR (subject_id = "C" OR (status_id = "Open" AND (status_id = "C" OR (level_id = "D" AND subject_id = "(Cat)")))))'

我需要通过正则,匹配字符串中最里层的括号及其中的内容(不匹配引号内的括号),即:

str1 => (status_id = "C" OR level_id = "D")

str2 => (level_id = "D" AND subject_id = "(Cat)")

那么,这种超复杂的正则应该怎么写?

如果正则实现不了,那么JS怎么来实现?


补充,对于 str1,我找到了这样的正则可以满足匹配:

\([^()]+\)

但是对于str2, 依然没有办法,期待大家解答!

对于str2,我找到了这样的

\([^()]*\"[^"]*\"[^()]*\)

看了一下需求我根本没考虑用正则,好像太复杂了…直接上传统方法吧;
可以使用运算优先级的思想,即用的数据结构来取得内部括号的内容;
技术要点:

  1. 匹配最内层的括号

  2. 引号内的内容不作为匹配标准

照着这个思路开始设计算法:
该算法是计算出要匹配的子字符串的 startIndexendIndex 然后用 substring() 方法获得子字符串;

  • 当匹配到一个 "(" 字符的时,入栈,当我们匹配到第一个 ")" 时,出栈,即两个索引之间的子字符串为目标字符串;

  • 匹配到一个 "\"" 时,则停止匹配 "(" ,直到搜索到下一个 "\"" 时,才继续开始搜索 "("

拍脑袋想出来的算法,有不足之处欢迎补充。

//这样,试试
/\(([^\(\)]*?”[^\”\(\)]*([^\”\(\)]+\)[^\(\)]*?\”[^\(\)]*)+)|([^\(\)]+\)/


补充:

分析需求 > 找到每个需求点的解决方案 > 整合解决方案 = 解决问题

分析需求:

  1. 需要匹配 ( a ) 的形式

  2. 其中 a 包含的字符有两种可能,用a1a2表示

    1. a1含有一个或多个 b " c " b 形式的字符串,

      1. 其中 b 是一段不包括 ", () 的字符串

      2. 其中 c 是一段不包括 " 的字符串

    2. a2中不含有 ()

逆向推导:

2.2 => a2 = [^\(\)]*
2.1.1 => b = [^\(\)\"]*
2.1.2 => c = [^\"]*
2.1 => a1= (b\"c\"b)+ = (b\"c\")+b =([^\(\)\"]*\"[^\"]*\")+[^\(\)\"]*
1 => \(a\) = \(a1\)|\(a2\) = \(([^\(\)\"]*\"[^\"]*\")+[^\(\)\"]*\)|\([^\(\)]*\)

正则表达式:

/\(([^\(\)\"]*\"[^\"]*\")+[^\(\)\"]*\)|\([^\(\)]*\)/

验证:

var reg = /\(([^\(\)\"]*\"[^\"]*\")+[^\(\)\"]*\)|\([^\(\)]*\)/;

'(the (quick "brown" fox "jumps over, (the) lazy" dog ))'
    .match(reg)[0]
//"(quick "brown" fox "jumps over, (the) lazy" dog )"

'(the ("(quick)" brown fox "jumps (over, the)" lazy) dog )'
    .match(reg)[0];
//"("(quick)" brown fox "jumps (over, the)" lazy)"

'(the (quick brown fox (jumps "over", ((the) "lazy"))) dog )'
    .match(reg)[0];
//"(the)"

那就这么改:

substr=str.match(/\([^()]+\)/g)[0]

得到最里面括号及其中的值,后判断该值前一位是否是 “,后一位是否是 ”:

index=str.indexOf(str.match(/\([^()]+\)/g)[0])
length=str.match(/\([^()]+\)/g)[0].length
str.substr(index+length,1)
str.substr(index-1,1)

如果不存在,则是需要的答案,如果存在,则先将str中substr替换掉,后在match一下,最后在替换回来:

str.replace(substr,"&&&")
str.replace(substr,"&&&").match(/\([^()]+\)/g)[0]
str.replace(substr,"&&&").match(/\([^()]+\)/g)[0].replace("&&&",substr)

本题难点在需要对””进行递归统计,例如

(level_id = "D AND subject_id = "(Cat)"")

(cat)是符合要求的.

\([^()]*?\"((?:[^\"\"]|\"(?1)\")*+)\"[^()]*?\)|\([^()]*?\)

真爱生命,远离正则,该正则可以满足你的要求,php能用(php支持递归)java及Python无法使用.

推荐一个思路,找到(的index,切字符串处理

手机发不出正则 黑线
楼主的【^()】里如果不匹配()则继续
把不匹配(的条件去掉,把贪婪的+改成*?即可

!代码

console.log(‘(subject_id = “A” OR (status_id = “Open” AND (status_id = “C” OR level_id = “D”)))’.match(/(1*)/))
希望对你有帮助


  1. ()

用正则匹配会比较复杂,建议 把干扰串 “( 和 )” 替换掉,比如 “[, ]”,再用简单的正则替换,之后再换回来。

正则用 Python 实现如下:

import re

str1 = '(subject_id = "A" OR (status_id = "Open" AND (status_id = "C" OR level_id = "D")))'
str2 = '(subject_id = "A" OR subject_id = "Food" OR (subject_id = "C" OR (status_id = "Open" AND (status_id = "C" OR (level_id = "D" AND subject_id = "(Cat)")))))'

pat = re.compile(r"""(?<=[^"])
        \([^()]+?
        ("\(.+?\)")*
        \)
        (?=[^"])
        """, re.X)

print pat.search(str1).group(0)
print pat.search(str2).group(0)

输出为:

(status_id = "C" OR level_id = "D")
(level_id = "D" AND subject_id = "(Cat)")

(看完/读完)这篇文章有何感想! 网络捕鱼赢现金游戏的分享…

捕鱼平台能换现金的ci 3.0 session读取成功后出现错误?

( 捕鱼平台能换现金的 )

在注册页生成验证码图片,并且有以下方法存储session
$this->load->library(‘session’);
$this->session->randcode=验证码;

然后提交表单到另一页,另一页面读取session用以下方式
$this->load->library(‘session’);
echo $this->session->randcode;
$this->session->randcode 值是打印出来了,
但是后面提示以下错误

config.php中session配置如下

$config[‘sess_driver’] = ‘files’;
$config[‘sess_cookie_name’] = ‘ci_session’;
$config[‘sess_expiration’] = 7200;
$config[‘sess_save_path’] = ‘sessions’;
$config[‘sess_match_ip’] = FALSE;
$config[‘sess_time_to_update’] = 50;//300
$config[‘sess_regenerate_destroy’] = FALSE;

请问如何处理,为什么?

sess_save_path不存在

解决办法:
修改$config['sess_save_path'] = 'sessions';
$config['sess_save_path'] = FCPATH.'sessions/';

在根目录下新建sessions文件夹,*nix系统需要给写权限

(看完/读完)这篇文章有何感想! 捕鱼平台能换现金的的分享…

捕鱼平台能换现金的redis对于带分页带多条件排序的列表,如何进行缓存

( 捕鱼平台能换现金的 )

环境: mysql(数据库) + redis(缓存)

场景: 论坛帖子列表

  1. 带分页

  2. 需要按照时间/热度/等排序

  3. 需要在列表就显示标题跟内容

并发量: 峰值可能会到几万,但持续时间可能也就一天,并且读写都可能比较频繁

建议异步,使用定时任务定时去mysql中按照所有规则将数据排好序查询出来放入redis,按时间排序放入redis,按热度排序放入redis,当排好序放入redis之后分页就很简单了。

(看完/读完)这篇文章有何感想! 捕鱼平台能换现金的的分享…

网络捕鱼赢现金游戏如何把一个文本中的Email用*隐藏

( 网络捕鱼赢现金游戏 )

如何隐藏下面一段文本中的email地址?
$str = ‘汉字的是scdd test001@qq.com asda test002@qq.com 你后am test009@aa.com 最后一个邮箱 defse@ff.com’;
预期的结果是:

汉字的是scdd *******@qq.com asda *******@qq.com 你后am *******@aa.com 最后一个邮箱 *****@ff.com


$str = '汉字的是scdd test001@qq.com asda test002@qq.com 你后am test009@aa.com 最后一个邮箱 defse@ff.com';
$replace = "*";
echo preg_replace_callback('/([a-zA-Z0-9]*)@([a-zA-Z0-9]*\.com)/',
    function($matches) use ($replace){
        return str_repeat($replace,strlen($matches[1]))."@".$matches[2];
},
    $str);

(看完/读完)这篇文章有何感想! 网络捕鱼赢现金游戏的分享…

网络捕鱼赢现金游戏WEB页面如何得知用户当前是手机访问还是通过3G/4G网络访问?

( 网络捕鱼赢现金游戏 )

隐约记得以前好象哪里看到过有什么header信息可以进行判断,要用了找不到了。
应该是只要通过移动网络访问,运营商会在header里面添加点什么信息。能有人给一下不?

这个是浏览器的原因吧,

安卓微信UserAgent,里边有一个NetType/WIFI

Mozilla/5.0 (Linux; U; Android 4.4.4; zh-cn; m1 note Build/KTU84P) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.4 TBS/025489 Mobile Safari/533.1 MicroMessenger/6.3.13.49_r4080b63.740 NetType/WIFI Language/zh_CN

ios微信UserAgent同样NetType/WIFI

(看完/读完)这篇文章有何感想! 网络捕鱼赢现金游戏的分享…