我对@Inject
java ee 6中的注释有疑问:
有什么区别:
@Inject
private TestBean test;
@Inject
private Instance<TestBean> test2;
Run Code Online (Sandbox Code Playgroud)
要参考:
test2.get();
Run Code Online (Sandbox Code Playgroud)
关于Instance的一些信息:http://docs.oracle.com/javaee/6/api/javax/enterprise/inject/Instance.html
也许在get()调用之前它不会创建对象?我只是想知道哪一个更适合jvm内存.我认为direct @Inject
会直接创建一个对象的实例,即使它没有被appplication使用...
谢谢 !
我在Java EE 7后端使用AngularJS和REST API.该项目部署在Wildfly应用程序服务器上,我有一些问题重新分类证券:
加密/解密数据我使用CryptoJS在服务器端(Java)加密和解密,但显然我们必须清除密码,密码和盐只加密.我的问题是为什么密码短语是明文?它应该是秘密的,然后加密也没有?
对于REST API,Java EE 7使用的标准是什么,HTTP安全头(basic-auth)?Json Access令牌?它是如何工作的,在cookie上存储用户会话/令牌的位置?我只是想知道如何使用Angular.
也许我可以使用经典的JAAS进行基于表单的身份验证,然后让服务器端的request.login()进行身份验证,然后我的EJB将全部受@Role保护.
在AngularJS中保护页面的方法是什么?目前我正在使用web.xml并放置URL模式,也许有更好的方法?
我已经找到了很多像这样的例子:
AngularJs和Jboss以及JAAS(omnisecurity)
如何集成angularjs和基于java jaas的身份验证?
有些用户提到这个:
* index.html page should contain token inside html to avoid CSRF
* token shouldn't be stored in a cookie storage
* Each request should be signed with header param
* Server should validate every request by passed header
* If cookie usage is a must you should validate referer in order to prevent CSRF
Run Code Online (Sandbox Code Playgroud)
但是没有关于如何实现这一点的具体例子,尤其是CSRF.