javascript

java

python

c#

android

node.js

reactjs

c++

php

html

jquery

css

.net

ios

git

ruby-on-rails

sql

c

string

ruby

Spring 3.0与Java EE 6.0

我遇到了一个情况...

我曾被要求就采用哪种方法提供建议,就Spring 3.0和Java EE 6.0之间的Java EE开发而言。 我曾经是,现在仍然是Spring 2.5的推动者,特别是在JBoss的基础上,胜过经典Java EE 5开发,我什至将旧应用程序迁移到Spring,并影响了此处对开发策略的重新定义,以包括Spring特定的API,并帮助 制定战略计划以培育更轻巧的解决方案,例如Spring + Tomcat,而不是笨重的JBoss,现在,我们只是将JBoss用作Web容器,而我称之为“容器悖论中的容器”, 也就是说,在JBoss中运行具有大多数API的Spring应用程序,因此我们正在迁移到tomcat。

但是,随着Java EE 6.0的到来,许多功能使Spring在那时变得很有吸引力,易于部署,耦合较少,甚至某种D.I等似乎都以一种或另一种方式被模仿。 JSF 2.0,JPA 2.0,WebBeans,WebProfiles等

所以问题来了...

从您的角度来看,鉴于Java EE 6.0提供的新观点,继续投资像Spring这样的非标准Java EE开发框架是多么安全和合理?

我们能否谈谈Spring开发的3年或4年,还是建议您早日采用Java EE 6.0 API及其实践?

我将不胜感激。

trans by 2020-01-17T20:54:44Z

java-有一种方法只能在Tomcat / Wildfly / Glassfish启动时运行方法/类吗?

我需要在Tomcat启动时删除临时文件,其中包含临时文件的文件夹的传递位于applicationContext.xml中。

有没有一种方法只能在Tomcat启动时运行方法/类?

trans by 2020-01-15T04:24:00Z

java-具有“包含”页面的jsp页面中的变量

在使用标签添加到页面的jsp页面中,变量的作用域规则是什么?

我的理解是,包含的页面实际上是将verbatum复制到该页面中的,这会使我假设,如果我在Parent jsp中声明了一个变量,则该变量将在子代中可用。

但是Eclipse对此有所抱怨(可以理解,因为我可以将页面包含在任何页面中,也可以将它们单独使用。而且,当我尝试启动无法启动的tomcat服务器时,也是如此。

我基本上想从父页面的会话中获取几个变量,并在子页面中使用它们。 这行不通。

因此,我一直反对他在每个子页面中从会话中获取它们的想法,但是我想知道是否可以给他们所有相同的变量名,或者是否必须在其中为它们选择不同的变量名。 每个页面,这样他们就不会发生冲突。

如果我在父jss中导入log4net,那么导入又该如何在子js中导入呢?

trans by 2020-01-14T16:17:58Z

java-将表单发布为multipart / form-d时,UTF-8文本乱码

我正在将文件上传到服务器。 文件上传HTML表单具有2个字段:

  1. 文件名-HTML文本框,用户可以在其中输入任何语言的名称。
  2. 文件上载-HTMl“文件”,用户可以在其中指定要从磁盘上载的文件。

提交表单后,将正确接收文件内容。 但是,读取文件名(上面的第1点)时,显示为乱码。 ASCII字符正确显示。 如果以其他某种语言(德语,法语等)给出名称,则会出现问题。

在servlet方法中,请求的字符编码设置为UTF-8。 我什至尝试过按照提到的方法进行过滤-如何使此代码与jQuery / Ajax工作一起提交UTF-8表单文本区域? -但似乎不起作用。 仅文件名似乎是乱码。

文件名所在的MySQL表支持UTF-8。 我给了随机的非英语字符,它们被正确地存储/显示。

使用Fiddler,我监视了请求,并且所有POST数据均正确传递。 我正在尝试确定数据如何/在哪里出现乱码。 任何帮助将不胜感激。

trans by 2020-01-13T02:59:12Z

java-“ jta-datasource”和“ resource-local”数据源之间的区别?

术语“ jta-datasource”和“ resource-local datasource”对我来说有点模糊。 我放下我所理解的(或假设的),我想让你说出我对/错的地方。

  • 可以将同一数据库称为jta数据源或资源本地数据源
  • 如果提到为jta-datasource,那么Bean /其他类可以使用JTA。 因此,UserTransaction接口
  • 如果数据源是本地资源,则无法使用CMT / BMT
  • 如果提到作为资源本地数据源,则事务不支持JTA。 代码可以使用EntityTransaction接口,但不能使用UserTransaction接口

谢谢!

trans by 2020-01-10T23:19:21Z

java ee-用户登录Web应用程序时如何实现“保持登录状态”

在大多数网站上,当用户要提供用户名和密码来登录系统时,会出现一个复选框,例如“保持登录状态”。 如果选中此框,它将使您从同一Web浏览器跨所有会话登录。 如何在Java EE中实现相同功能?

我正在将基于FORM的容器管理的身份验证与JSF登录页面一起使用。

<security-constraint>
    <display-name>Student</display-name>
    <web-resource-collection>
        <web-resource-name>CentralFeed</web-resource-name>
        <description/>
        <url-pattern>/CentralFeed.jsf</url-pattern>
    </web-resource-collection>        
    <auth-constraint>
        <description/>
        <role-name>STUDENT</role-name>
        <role-name>ADMINISTRATOR</role-name>
    </auth-constraint>
</security-constraint>
 <login-config>
    <auth-method>FORM</auth-method>
    <realm-name>jdbc-realm-scholar</realm-name>
    <form-login-config>
        <form-login-page>/index.jsf</form-login-page>
        <form-error-page>/LoginError.jsf</form-error-page>
    </form-login-config>
</login-config>
<security-role>
    <description>Admin who has ultimate power over everything</description>
    <role-name>ADMINISTRATOR</role-name>
</security-role>    
<security-role>
    <description>Participants of the social networking Bridgeye.com</description>
    <role-name>STUDENT</role-name>
</security-role>
trans by 2020-01-10T15:39:43Z

java-如何强制浏览器下载文件?

一切正常,但是只有当文件很小(大约1MB)时,当我尝试使用更大的文件(例如20MB)时,我的浏览器将其显示,而不是强制下载,到目前为止,我尝试了许多标头,现在我的代码看起来像:

PrintWriter out = response.getWriter();
String fileName = request.getParameter("filename");

File f= new File(fileName);

InputStream in = new FileInputStream(f);
BufferedInputStream bin = new BufferedInputStream(in);
DataInputStream din = new DataInputStream(bin);

while(din.available() > 0){
    out.print(din.readLine());
    out.print("\n");
}

response.setContentType("application/force-download");
response.setContentLength((int)f.length());
response.setHeader("Content-Transfer-Encoding", "binary");
response.setHeader("Content-Disposition","attachment; filename=\"" + "xxx\"");//fileName);


in.close();
bin.close();
din.close();
trans by 2020-01-10T09:40:41Z

体系结构-如何设计和构建Java / Java EE Web应用程序?

我是Java开发人员,在Struts,Spring和Hibernate上拥有近5年的经验。

几天后我们将有一个新项目。 我们对我们有完整的要求,我们将使用Spring MVC,Spring和Hibernate进行此项目。

我被要求设计和架构整个Web应用程序。 设计和创建建筑师是我迄今为止在职业生涯中从未做过的事情。 而且我不知道该怎么办,从哪里开始,使用什么工具等等。 我什至都不知道A,B,C的设计和建筑风格。

您可能想知道为什么我一开始就被要求这样做。 事情是给了我这样做的机会,在每个阶段我都会受到监控,并且我的前辈将审查设计。

因此,欢迎您提出任何建议,想法和步骤,以继续前进。

trans by 2020-01-09T11:07:44Z

部署-在JBoss上进行热部署-如何使JBoss“看到”更改?

我正在开发一个Java EE应用程序,该应用程序在开发过程中一次又一次地部署在本地JBoss安装上。 我想通过将应用程序直接直接部署到[JBOSS] / server / default / deploy / myApp中来加快构建速度

它似乎可以工作-但是在硬部署和JBoss开始使用新类之间似乎也存在一些任意的延迟。 我对JBoss不太熟悉,但是我认为它缓存了类,这就是导致问题的原因。

我是否正确,如果可以,如何使JBoss刷新其缓存?

trans by 2020-01-07T16:20:50Z

java-JavaEE中的“ Facet”是什么?

我不仅想知道什么是Facet,还想知道什么是Facet“在物理层面上”(据我了解,它不是一个单独的jar,而是什么?)?

我还想知道它在部署后如何影响我的应用程序。 我将以实际示例进行说明:

我有2个方面(由IDE创建):Spring Facet和Web Facet(用于jsf)。 我将其部署到Tomcat,我的应用程序运行良好。

然后,我(通过IDE)又添加了一个方面-JPA Facet。 我重新部署了应用程序,但仍然可以正常工作:)

所以,我很好奇那是什么,为什么我们需要它?

trans by 2020-01-03T12:24:06Z

我可以通过Java EE webapp使用Windows身份验证连接到SQL Server吗?

我目前正在研究如何使用Windows身份验证而不是SQL Server身份验证从Java EE Web应用程序连接到SQL Server数据库。 我正在从Tomcat 6.0上运行此应用程序,并正在使用Microsoft JDBC驱动程序。 我的连接属性文件如下所示:

dbDriver              = com.microsoft.sqlserver.jdbc.SQLServerDriver
dbUser                = user
dbPass                = password
dbServer              = localhost:1433;databaseName=testDb
dbUrl                 = jdbc:sqlserver://localhost:1433

使用SQL Server身份验证时,以这种方式连接到SQL Server数据库的问题为零。

有什么方法可以检索用户的Windows身份验证的凭据并将该身份验证用于SQL Server?

更新:我知道在ASP.net中有一种方法可以设置Windows身份验证以访问Web应用程序,这正是我在寻找的东西,只是我希望将该令牌传递给SQL Server来访问数据库。

trans by 2020-01-01T22:42:58Z

在Java Web应用程序(WAR)中存储配置文件的最佳位置是什么?

我创建一个Web应用程序(WAR)并将其部署在Tomcat上。 在webapp中,有一个带有表单的页面,管理员可以在其中输入一些配置数据。 我不想将此数据存储在DBMS中,而只是存储在文件系统上的XML文件中。 放在哪里?

我想将文件放在部署应用程序本身的目录树中的某个位置。 我的配置文件应该在WEB-INF目录中吗? 还是放在其他地方?

在servlet中使用什么Java代码查找目录的绝对路径? 还是可以通过相对路径访问它?

trans by 2019-12-27T08:52:48Z

java-将JSF理解为MVC框架

我正在阅读JSF,我感到非常困惑,为什么JSF是MVC框架(或者至少哪些部分属于哪个“字母”)。

我看了这个问题:JSF MVC框架中的MVC是什么组件?

我读过这里,如果您没有在聚合视图中查看它,则模型是您的实体,视图是您的XHTML代码,控制器是托管bean。 嗯...好,但是视图不是经常依赖于执行进一步的业务逻辑调用(例如返回一组实体),描述是否仍然合适?

我读过的一本书将其描述为托管Bean,是Faces Servlet(控制器)用来调用业务层(模型)的某种“消息”带来者,然后XHTML代码就是视图。

有太多的解释和差异,所以我不知道该如何理解。

trans by 2019-12-26T12:18:34Z

java-将枚举类型用作@ RolesAllowed-Annotation的值参数

我正在开发Java企业应用程序,当前正在执行Java EE安全性工作,以限制对特定用户的特定功能的访问。 我配置了应用程序服务器以及所有内容,现在使用RolesAllowed注释保护方法的安全:

@Documented
@Retention (RUNTIME)
@Target({TYPE, METHOD})
public @interface RolesAllowed {
    String[] value();
}

当我使用这样的注释时,它可以正常工作:

@RolesAllowed("STUDENT")
public void update(User p) { ... }

但这不是我想要的,因为我必须在这里使用String,因此重构变得很困难,并且可能会出现拼写错误。 因此,我想使用一个Enum值作为此注释的参数,而不是使用String。 枚举看起来像这样:

public enum RoleType {
    STUDENT("STUDENT"),
    TEACHER("TEACHER"),
    DEANERY("DEANERY");

    private final String label;

    private RoleType(String label) {
        this.label = label;
    }

    public String toString() {
        return this.label;
    }
}

所以我尝试使用Enum作为这样的参数:

@RolesAllowed(RoleType.DEANERY.name())
public void update(User p) { ... }

但是随后我得到以下编译器错误,尽管Enum.name只是返回一个String(始终是常量,对吗?)。

注释属性RolesAllowed.value的值必须是一个常量表达式`

我尝试的下一件事是向我的Enum添加一个额外的最终String:

public enum RoleType {
    ...
    public static final String STUDENT_ROLE = STUDENT.toString();
    ...
}

但这也不能用作参数,导致相同的编译器错误:

// The value for annotation attribute RolesAllowed.value must be a constant expression
@RolesAllowed(RoleType.STUDENT_ROLE)

如何实现我想要的行为? 我什至实现了自己的拦截器以使用自己的注释,这很漂亮,但是对于这样的小问题,代码行太多了。

免责声明

这个问题原本是Scala问题。 我发现Scala并不是问题的根源,因此我首先尝试用Java做到这一点。

trans by 2019-12-26T05:44:40Z

爆炸式发展是什么意思? (在Java中)

我在这个网站上碰到了“爆炸式发展”一词。

[http://www.zeroturnaround.com/javarebel/support-matrix/]

并记得在使用Java Web应用程序之前听说过它。 据我所知,这与将.war文件部署为提取的/原始文件集有关。 而不是每次要尝试更改代码时,都使用ANT / Maven任务将war文件部署到应用程序服务器,而是告诉应用程序服务器将“ war”部署到其中部署了战争内容的文件夹的内容 。

我在正确的轨道上吗? 如果有人对这个术语的含义以及使用它的含义有深刻的了解,那就太好了。

trans by 2019-11-18T04:58:17Z

在哪里可以找到Java EE 6的所有参考实现的列表?

您是否知道Java EE 6的每个组件是否都包含所有参考实现的列表? 即 GlassFish是参考容器,是用于验证的Hibernate Validator等。

trans by 2019-11-17T05:46:37Z

java-使用Jersey客户端执行POST操作

在Java方法中,我想使用Jersey客户端对象对RESTful Web服务(也使用Jersey编写)进行POST操作,但是不确定如何使用客户端发送将用作FormParam的值 在服务器上。 我能够发送查询参数就好了。

trans by 2019-11-13T02:37:16Z

Java-CDI:beans.xml,我应该放在哪里?

我将Weld用作CDI实施。 当我在mvn clean install中有空bean.xml时,试图组装实例化实例化Weld容器的对象图的集成测试运行良好,这是一个简单的测试:

public class WeldIntegrationTest {
    @Test
    public void testInjector() {
        new Weld().initialize();
        // shouldn't throw exception
    }
}

现在,当我运行mvn clean install时,我总是得到:Missing beans.xml file in META-INF!

我的根文件夹是“ src”和“ web”,其中包含WEB-INF文件夹,但我也尝试使用默认的maven结构,并将“ web”重命名为“ webapp”,并将其移至src / main。 我尝试了所有可以想到的合理位置:

 - src/main/java/META-INF/beans.xml
 - src/test/java/META-INF/beans.xml
 - web/WEB-INF/beans.xml
 - src/main/webapp/WEB-INF/beans.xml
 - src/main/webapp/META-INF/beans.xml
 - src/main/webapp/META-INF/(empty) and src/main/webapp/WEB-INF/beans.xml

到目前为止没有任何效果:/

trans by 2019-11-05T21:39:23Z

java-使ArrayList只读

在Java中,如何在初始化后将ArrayList设置为只读(以便没有人可以添加,编辑或删除元素)?

trans by 2019-11-04T22:08:11Z

Servlet-WEB-INF在Java EE Web应用程序中代表什么?

互联网上大多数地方都说它代表WEB INFormation。

我对此表示怀疑。 该文件夹包含可执行文件。 信息不是合适的名称。

trans by 2019-11-04T14:07:12Z

1 2 3 4 5 下一页 共5页