草庐IT

Bean-IOC

全部标签

java - 使用 Hibernate 更新表时忽略实体 bean 的空值

Stuckonthesameproblem在Hibernate中更新数据库时,是否有任何方法可以忽略null值?每当你调用update();Session,它还将更新在对象中找到的空值。示例:Useruser=newUser();user.setUserId(5);user.setUserName("Maarten");user.setUserFirstName(null);//butindatabasethisvalueisnotnullsession.update(user);或session.saveOrUpdate(user);数据库现在将更新用户,但会将用户名字设置为空(因为

java - 为什么要使用有状态 session bean?

我正在学习EJB3,我只是好奇什么时候方便使用SFSB?当SFSB真正轻松解决一些复杂问题时,我找不到任何好的例子。实际上我看到SLSB可以用作网络服务,这很方便。但是我不知道什么时候使用SFSB。我只看到它的问题,因为我们应该学习一些关于它的东西,我们应该编写由注释组成的代码,而不是完全,我们应该使用烦人的查找......我们没有得到任何好的返回。例如,我们不能从SLSB使用SFSB,因为有状态对象只能从有状态上下文使用。我们不能在servlet中使用DI,而应该使用JNDI查找手动创建SFSB实例,然后将其放入HttpSession对象中。它不能是网络服务。我在SFSB中看到的唯一

java - 当我可以直接使用类名访问唯一的静态方法时,创建 Spring bean 是否有利

我认为我对springbeans的理解有点偏差。我正在做我的项目,我正在考虑这种情况。假设我有类FooclassFoo(){publicvoiddoSomething(Objecta,Objectb){//inputparametersdoesnotmatteractually.//dosomething}}如果我在另一个类中使用此类:classScheduler{....@AutowiredprivateFoofoo;someMethod(){foo.doSomeThind(a,b);}....}在上述情况下,我可以使doSomeThing静态并直接使用Foo.doSomeThing

java - JSF 托管 bean 在 Tomcat 部署期间导致 java.io.NotSerializableException

在Tomcat7上部署我的webApplication时,我得到以下控制台输出。重启服务器2-3次后无异常。我正在使用JSF、Tomcat和一个RMI连接到业务逻辑部分(这在这里无关紧要?)@EJBin@ViewScopedmanagedbeancausesjava.io.NotSerializableException-在这里我读到了序列化。但在那种情况下,客户端状态保存被激活,而在我的webApp中不是这种情况(据我的web.xml告诉我)。那么我的viewscopedManagedBean的序列化是必要的还是有另一个失败?这是我的启动控制台输出(抱歉其中的德语部分):28.01.

java - jackson IOException : Can not deserialize Class com. mycompany.models.Person$Address(类型为非静态成员类)作为 Bean

我有一个看起来像这样的类:publicclassPerson{publicclassAddress{privateStringline1;privateStringline2;privateStringzipCode;privateStringstate;//standardpublicgettersandsettersfortheclasshere}privateStringname;privateStringaddress;//standardpublicgettersandsettersfortheclasshere}下面是我如何使用jackson的。publicclassJso

java - 如何从 XSD 生成带有 Bean Validation 注释的 Java 对象?

我正在编写一个EJB作为契约优先SOAP服务,我从WSDL生成java类和SEI。WSDL指定了几种具有约束(最大长度、模式等)的类型。生成的java类带有JAXB注释,但缺少约束元数据,因为JAXB注释不支持这些元数据。这意味着只有在通过SOAP端点调用服务时才会进行输入验证。问题是,当EJB被另一个EJB调用时,验证被绕过,因为它位于XML堆栈中。我想禁用XMLSchemavalidation并改为使用BeanValidation,以便验证适用于调用EJB的两种方式(SOAP和RMI)。问题:如何在Java类上不仅生成JAXB注释而且生成BeanValidation注释?

java - 什么是 Enterprise Java Bean?

在TomcatFAQ上它说:“Tomcat不是EJB服务器。Tomcat不是完整的J2EE服务器。”但是如果我:使用Spring提供应用程序上下文用JPA注释我的实体注释(并使用Hibernate作为JPA提供商)将C3P0配置为连接池数据来源注释我的服务方法使用@Transactional(并使用Atomikos作为JTA提供者)使用JAXB进行编码和解码并可能添加我自己的JNDI功能那我不是有一个有效的JavaEE应用服务器吗?那么我的beans不是EJB吗?还是有一些其他定义特征?JavaEE兼容的应用服务器为您提供了哪些您无法通过某些第3方子系统从Tomcat轻松获得的东西?

java - Spring Bean Validation @Valid 处理

我已经通过以下方法使用BeanValidation1.2创建了一个SpringMVCREST服务:@RequestMapping(value="/valid")publicStringvalidatedMethod(@ValidValidObjectobject){}如果对象无效,Tomcat会通知我客户端发送的请求在语法上不正确。并且我的validatedMethod永远不会被调用。如何获取在ValidObjectbean中定义的消息?我应该使用一些过滤器或拦截器吗?我知道我可以像下面这样重写,从注入(inject)的Validator中获取一组ConstraintViolation

java - 当 bean 具有带有 @Formula 注释的属性时,findRowCount 不起作用

我有以下类(class):@Entity@Table(name="clients")publicclassClientextendsModel{@Idpublicintid;@Formula(select="inv.some_data",join="leftjoin(select1assome_data)asinv")publicintsomeData;publicstaticFinderfind=newFinder(String.class,Client.class);publicstaticintcountClientsWithData(){returnClient.find.wh

java - Java 8 接口(interface)中的默认方法和 Bean Info Introspector

我对Interface和BeanInfoIntrospector中的默认方法有一个小问题。在这个例子中,有接口(interface):InterfacepublicstaticinterfaceInterface{defaultpublicStringgetLetter(){return"A";}}还有两个类ClassA和ClassB:publicstaticclassClassAimplementsInterface{}publicstaticclassClassBimplementsInterface{publicStringgetLetter(){return"B";}}在mai