Java教程 第92页

JavaFX TitledPane-国外主机测评 - 国外VPS,国外服务器,国外云服务器,测评及优惠码

JavaFX TitledPane

JavaFX教程 – JavaFX TitledPane 标题窗格是具有标题的面板,窗格可以打开和关闭。我们可以添加Node(如UI控件或图像)和一组元素到窗格。 import javafx.application.Application; import javafx.geometry.Insets; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.CheckBox; import javafx.scene.control.TitledPane; import javafx.scene.layout.HBox; import javafx.stage.Stage; //from w w w . j a v a 2 s . c o m public class Main extends Application { public static void main(String[] args) { launch(args); } @Override public void start(Stage stage) { Scene scene = new Scene(new Group(), 350, 250); TitledPane titledPane = new TitledPane("My Title", new CheckBox("OK")); HBox hbox = new HBox(10); hbox.setPadding(new Insets(20, 0, 0, 20)); hbox.getChildren().setAll(titledPane); Group root = (Group) scene.getRoot(); root.getChildren().add(hbox); stage.setScene(scene); stage.show(); } } 上面的代码生成以下结果。 创建标题窗格 要创建一个TitledPane控件,请调用其构造函数。 以下代码使用TitledPane的双参数构造函数。它将标题窗格命名为“我的窗格”,并用一个Button控件填充窗格。 TitledPane tp = new TitledPane("My Pane", new Button("Button")); 接下来的几行做了与上面的代码相同的事情,而没有使用构造函数带参数。 它创建一个带有默认空构造函数的TittedPane并设置标题并进行内容控制。 TitledPane tp = new TitledPane(); tp.setText("My Titled Pane"); tp.setContent(new Button("Button")); 以下代码使用GridPane在TitledPane中布局控件。 TitledPane gridTitlePane...

JavaFX手风琴-国外主机测评 - 国外VPS,国外服务器,国外云服务器,测评及优惠码

JavaFX手风琴

JavaFX教程 – JavaFX手风琴 可以使用手风琴控件对标题窗格进行分组。 import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.Accordion; import javafx.scene.control.Button; import javafx.scene.control.TitledPane; import javafx.stage.Stage; //from w w w .j ava 2 s .com public class Main extends Application { public static void main(String[] args) { Application.launch(args); } @Override public void start(Stage primaryStage) { Group g = new Group(); Scene scene = new Scene(g, 550, 250); TitledPane t1 = new TitledPane("T1", new Button("B1")); TitledPane t2 = new TitledPane("T2", new Button("B2")); TitledPane t3 = new TitledPane("T3", new Button("B3")); Accordion accordion = new Accordion(); accordion.getPanes().addAll(t1, t2, t3); g.getChildren().add(accordion); primaryStage.setScene(scene); primaryStage.show(); } } 上面的代码生成以下结果。 手风琴事件 import javafx.application.Application; import javafx.beans.value.ObservableValue; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.Accordion; import javafx.scene.control.Button; import javafx.scene.control.TitledPane; import javafx.stage.Stage; /* w w w . ja va 2 s...

JPA教程 - JPA Spring HSQL开发环境设置示例-国外主机测评 - 国外VPS,国外服务器,国外云服务器,测评及优惠码

JPA教程 - JPA Spring HSQL开发环境设置示例

JPA教程 – JPA Spring HSQL开发环境设置示例 以下部分显示如何设置开发环境用于使用Spring JPA和HSQL数据库开发JPA应用程序。 单击以下链接下载文件。 Download JPA_Env_Setup.zip POM文件 下面的代码列出了开发所需的Maven依赖JPA应用程序。 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.w3cschool.jpa</groupId> <artifactId>Java2sExamples</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <name>Java2sExamples_JPA</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> <version>4.2.0.Final</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>3.2.2.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>3.2.2.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-orm</artifactId> <version>3.2.2.RELEASE</version> </dependency> <dependency> <groupId>org.hsqldb</groupId> <artifactId>hsqldb</artifactId> <version>2.3.2</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> </project> 弹簧配置 以下代码来自applicationContext.xml。 ?<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xmlns:security="http://www.springframework.org/schema/security" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd"> <tx:annotation-driven /> <context:annotation-config /> <bean id="personDao" class="cn.w3cschool.common.PersonDaoImpl" /> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName"> <value>org.hsqldb.jdbcDriver</value> </property> <property name="url"> <value>jdbc:hsqldb:mem:mydatabase</value> </property> <property name="username"> <value>sa</value> </property> <property name="password"> <value></value> </property> </bean> <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="persistenceUnitName" value="jpaData"...

JPA教程 - JPA表唯一约束示例-国外主机测评 - 国外VPS,国外服务器,国外云服务器,测评及优惠码

JPA教程 - JPA表唯一约束示例

JPA教程 – JPA表唯一约束示例 我们可以用@Table注释添加表约束。 下表为名称列上的Person表添加了唯一约束。 @Entity @Table(uniqueConstraints=@UniqueConstraint(columnNames="NAME")) public class Person { 例子 下面的代码来自PersonDaoImpl.java。 package cn.w3cschool.common; import java.util.Calendar; import java.util.List; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; import org.springframework.transaction.annotation.Transactional; @Transactional public class PersonDaoImpl { public void test(){ Person p1 = new Person("Tom"); p1.setId(1L); p1.setDob(Calendar.getInstance()); Person p2 = new Person("Jack"); p2.setId(2L); save(p1); save(p2); listAll(); } private void listAll(){ List<Person> persons = getAll(); for (Person person : persons) { System.out.println(person); } } @PersistenceContext private EntityManager em; public Long save(Person person) { em.persist(person); return person.getId(); } public List<Person>getAll() { return em.createQuery("SELECT p FROM Person p", Person.class).getResultList(); } } 下面的代码来自Person.java。 package cn.w3cschool.common; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; import javax.persistence.Temporal; import javax.persistence.TemporalType; import javax.persistence.UniqueConstraint; @Entity @Table(uniqueConstraints=@UniqueConstraint(columnNames="NAME")) public class Person { @Id private long id; private String name; @Temporal(TemporalType.DATE)...

JSF教程 - JSF Hello World示例

JSF教程 – JSF Hello World示例 以下代码显示如何设置JSF开发环境。 下载源代码 单击以下链接下载JSF Hello World应用程序的源代码。 这是一个基于maven的项目。 Download HelloWorld.zip Maven POM文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.w3cschool.jsf</groupId> <version>1.0-SNAPSHOT</version> <artifactId>simple-webapp</artifactId> <packaging>war</packaging> <name>Simple Web Application</name> <dependencies> <dependency> <groupId>org.apache.geronimo.specs</groupId> <artifactId>geronimo-servlet_2.4_spec</artifactId> <version>1.1.1</version> </dependency> <dependency> <groupId>com.sun.faces</groupId> <artifactId>jsf-api</artifactId> <version>2.1.7</version> </dependency> <dependency> <groupId>com.sun.faces</groupId> <artifactId>jsf-impl</artifactId> <version>2.1.7</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.1</version> </dependency> <dependency> <groupId>com.sun.el</groupId> <artifactId>el-ri</artifactId> <version>1.0</version> </dependency> </dependencies> <build> <finalName>simple-webapp</finalName> </build> </project> 例子 以下代码来自HelloBean.java。 它是一个具有会话作用域的受管bean。 package cn.w3cschool.common; import javax.faces.bean.ManagedBean; import javax.faces.bean.SessionScoped; import java.io.Serializable; @ManagedBean @SessionScoped public class HelloBean implements Serializable { private static final long serialVersionUID = 1L; private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } } 以下代码来自welcome.xhtml。 <?xml...

JSF教程 - JSF管理Bean

JSF教程 – JSF管理Bean JSF Managed Bean是使用JSF注册的常规Java Bean类。 JSF Managed Bean是使用JSF注册的常规Java Bean类。… JSF管理的bean作为UI组件的模型。 它存储使用的数据通过JSF xhtml页面。 在JSF框架的帮助下,Managed Bean可以从JSF页面访问。 在JSF 1.2中,我们必须在JSF配置文件中注册一个托管bean例如faces-config.xml。 从JSF 2.0,可以使用注释注册托管bean。 使用XML配置 以下代码显示如何注册JSF受管Bean <managed-bean> <managed-bean-name>helloWorld</managed-bean-name> <managed-bean-class>com.w3cschool.test.HelloWorld</managed-bean-class> <managed-bean-scope>request</managed-bean-scope> </managed-bean> <managed-bean> <managed-bean-name>message</managed-bean-name> <managed-bean-class>com.w3cschool.test.Message</managed-bean-class> <managed-bean-scope>request</managed-bean-scope> </managed-bean> 使用@ManagedBean注释 以下代码显示了如何使用注释注册JSF受管Bean。 @ManagedBean(name = "helloWorld", eager = true) @RequestScoped public class HelloWorld { @ManagedProperty(value="#{message}") private Message message; ... } @ManagedBean 将bean标记为在name属性中指定的名称的托管bean。 如果未指定name属性,则指定受管bean名称将默认为简单类名称,第一个字母为lowercased。 在我们的情况下,它会是helloWorld。 如果eager设置为“true”,那么在请求bean之前创建managed bean。 “lazy”初始化被使用在bean将被创建只有当它被请求。 使用@ManagedBean注释… 范围注释设置受管bean的范围。 如果未指定scope,那么bean将默认为请求作用域。 我们可以将JSF bean范围设置为以下列表。 @RequestScoped bean lives as long as the HTTP request-response lives. It get created upon a HTTP request and get destroyed when the HTTP response associated with the HTTP request is finished. @NoneScoped bean stays as long as a single Expression Language(EL) evaluation. It get created upon an EL evaluation and get destroyed after the EL evaluation. @ViewScoped...

JSF教程 - JSF Ajax Hello World示例

JSF教程 – JSF Ajax Hello World示例 AJAX代表Asynchronous JavaScript And Xml。这是一种使用JavaScript的HTTPXMLObject发送数据的技术到服务器并从服务器异步接收数据。 在Ajax中,Javascript代码与服务器交换数据,更新网页的部分而不重新加载整个页面。 JSF支持使用f:ajax标签的Ajax调用。 下面显示了一个简单的JSF标记。 <f:ajax execute="input-component-name" render="output-component-name" /> 标记属性 属性 描述 disabled 如果为true,则Ajax行为将应用于任何父组件或子组件。如果为false,将禁用Ajax行为。 event 将调用Ajax请求的事件,例如“点击”,“改变”,“模糊”,“按键”等。 execute 组件的ID的空格分隔列表应包含在Ajax请求中。 immediate 如果在应用请求值阶段广播生成的“true”行为事件。否则,将在“调用应用程序”阶段期间广播事件。 listener 背景中方法的EL表达式bean在Ajax请求期间调用。 onerror 在Ajax请求期间发生错误时,JavaScript回调函数的名称。 onevent 用于处理UI事件的JavaScript回调函数的名称。 render 组件的ID的空格分隔列表将在Ajax请求后更新。 例子 以下代码显示了如何创建 h:outputText 标记Ajax应用程序来显示用户输入。 下面的代码来自UserBean.java。 package cn.w3cschool.common; import javax.faces.bean.ManagedBean; import javax.faces.bean.SessionScoped; import java.io.Serializable; @ManagedBean @SessionScoped public class UserBean implements Serializable { private static final long serialVersionUID = 1L; private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSayWelcome(){ if("".equals(name) || name ==null){ return "Null Message"; }else{ return "Ajax message : Welcome " + name; } } } 以下代码来自demo.xhtml。 h:inputText 创建一个输入字段框。它使用 h:commandButton 来调用 f:ajax 。 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML...

JSF教程 - JSF注入托管Bean示例

JSF教程 – JSF注入托管Bean示例 下面的代码显示了如何做bean注入。 我们首先定义一个消息bean,它有一个string属性存储信息。 @ManagedBean(name="message") @SessionScoped public class MessageBean implements Serializable { private static final long serialVersionUID = 1L; private String sayWelcome = "Welcome to JSF 2.0"; 然后我们定义另一个托管bean并注入MessageBean @ManagedProperty 注释。 @ManagedBean @SessionScoped public class UserBean implements Serializable { private static final long serialVersionUID = 1L; @ManagedProperty(value="#{message}") private MessageBean messageBean; public void setMessageBean(MessageBean messageBean) { this.messageBean = messageBean; } 例子 下面的代码来自UserBean.java。 package cn.w3cschool.common; import java.io.Serializable; import javax.faces.bean.ManagedBean; import javax.faces.bean.ManagedProperty; import javax.faces.bean.SessionScoped; @ManagedBean @SessionScoped public class UserBean implements Serializable { private static final long serialVersionUID = 1L; @ManagedProperty(value="#{message}") private MessageBean messageBean; public void setMessageBean(MessageBean messageBean) { this.messageBean = messageBean; } private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } public String...