2013-02-22 3 views
2

Когда я проверил разные сайты о java bean, я вижу, что это говорит о части многократно используемых компонентов, но о том, что означает многократно используемые компоненты на практике. Я не мог найти, каким образом это можно использовать повторно, и у меня нет примеров, описывающих то же самое. Просьба привести пример этого. Java bean имеет метод getter и setter, поэтому в каком смысле он может использоваться повторно?Что компоненты компонентов повторного использования java bean

public JavaBean{ 
    public String msg; 
    public JavaBean() 
    { 
     msg="hwllo"; 
    } 
    public string getMsg() 
    { 
     retrun msg; 
    } 
    public void setmsg(String msg) 
    { 
     this.msg=msg; 
    } 
} 
+0

«многоразовый» означает, что вы можете использовать код во многих разных проектах. –

+0

Этот вопрос может вам помочь, кажется очень похожим http://stackoverflow.com/questions/1727603/places-where-javabeans-are-used –

+0

@PradeepSimha Спасибо за предложение, но я уже видел его, и он не отвечает мне дп. я хочу сказать, в каком случае полезно – 2013-02-22 06:46:11

ответ

-1

да Java Beans является частью многоразовых кодов, это означает, что вы можете использовать его в любом место. Ниже приведен пример.

package customer; 
import java.io.*; 
import java.util.*; 
import java.sql.*; 

public class Customer implements Serializable 
{ 

     private String custID; 
     private String custName; 
     private int qty; 
     private float price; 
     private float total; 
     private int storeCust; 

     public String getCustID() { 
      return custID; 
     } 

     public void setCustID(String custID) { 
      this.custID = custID; 
     } 

     public String getCustName() { 
      return custName; 
     } 

     public void setCustName(String custName) { 
      this.custName = custName; 
     } 

     public int getQty() { 
      return qty; 
     } 

     public void setQty(int qty) { 
      this.qty = qty; 
     } 

     public float getPrice() { 
      return price; 
     } 

     public void setPrice(float price) { 
      this.price = price; 
     } 

     public float getTotal() { 
      return total; 
     } 

     public void setTotal(float total) { 
      this.total = total; 
     } 

     public int setStoreCust() 
     { 
      try{ 
      Class.forName("com.mysql.jdbc.Driver"); 
      Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/usermaster","admin","password"); 
      PreparedStatement pstmt=null; 
      String query=null; 
      query="insert into customer values(?,?,?,?,?)"; 
      pstmt=con.prepareStatement(query); 
      pstmt.setString(1,custID); 
      pstmt.setString(2,custName); 
      pstmt.setInt(3,qty); 
      pstmt.setFloat(4,price); 
      pstmt.setFloat(5,total); 
      int i=pstmt.executeUpdate(); 

      this.storeCust=i; 
      } 
      catch(Exception e) 
      { 

      } 
      return storeCust; 
     } 
} 

и это страница JSP

<%@ page contentType="text/html" pageEncoding="UTF-8"%> 
<%@ page import="java.util.*" %> 
<%@ page import="customer.Customer" %> 
<html> 
    <head> 
     <title>JSP and JavaBean</title> 

     <%-- create an instance of Customer class --%> 
     <jsp:useBean id="cObj" scope="request" class="customer.Customer"> 

     <%-- Set the value of attribute such as CustID --%> 
     <jsp:setProperty name="cObj" property="*" /> 
     </jsp:useBean> 

    </head> 
<body> 

<% 
      int x=cObj.setStoreCust(); 

      if(x>=1) 
      { 
     %> 
       <jsp:forward page="Success.jsp" /> 
     <% 

      } 
      else 
      { 
     %> 
       <jsp:forward page="Failure.jsp" /> 
     <% 

      } 

     %> 

при запуске этой страницы JSP будет просить Cutomer идентификатора, количество, общие и т.д., и после того, как вы отправите его, то он будет вставить его в базу данных. Например, вы хотите ввести 1000 записей, поэтому в этом случае вы не создаете файл с разметкой в ​​1000 раз, только вы создаете один раз, а затем все будет выполнено bean-компонентом.

Ниже приведены некоторые правила JavaBeans, имейте это в виду

1.javabean должен содержать конструктор, который не принимает заданы параметры. 2.javabean can not объявляет переменные публичного экземпляра; 3.javabeans должен содержать методы get и set для всех свойств, которые должны быть доступны JSP.

0

"многоразовый" означает, что вы можете использовать код во многих разных проектах. Например, все компоненты Swing также являются Java-бобами. Вы можете использовать JFrame столько программ, сколько пожелаете.

+0

вы сказали, что все компоненты поворота также являются javabeans, но компоненты swing не имеют методов getter и setter – 2013-02-22 06:45:44

0

Java Beans простых классы Java, которые соответствуют определенным правилам, как:

1) не арг (по умолчанию) публичный конструктор 2) Для каждого свойства должны быть аксессор (получить) и мутатор (набор) методы 3) Get/Set методы должны следовать определенным именования, 4) класс должен быть сериализуемым

Если вы будете следовать этим правилам, то другой (потенциально третья сторона) программное обеспечение может discover возможности своего класса во время выполнения и использовать его , Например. struts tags - простые бобы java, которые повторно используются во многих веб-приложениях. Как правило, Java Beans выполняется в виде container, который управляет жизненным циклом, например создание, вызов метода, уничтожение и т. Д. Контейнеры (например, контейнер сервлетов, весенний контейнер и т. Д.) Могут создавать экземпляр вашего класса и заполнять его свойства даже до того, как вы действительно используете это в вашем коде. Таким образом, много кода/повторяющейся логики (создание объектов, совокупность свойств) вынимается из кода, который его повторно использует.

+0

вы можете описать со ссылкой на код, который я опубликовал /? Не могли бы вы рассказать, как это можно использовать повторно? – 2013-02-22 07:06:52

+0

Ваш 'setmsg()' неверен. Это не фасоль :-) В любом случае, прежде всего, bean должен быть действительно «полезным», чтобы стать многоразовым. Ваш компонент не делает ничего полезного. Следовательно, трудно привести его к повторному использованию. Однако рассмотрим это: допустим, у меня есть класс «MessagePlayer», который принимает ваш класс и просто находит все его свойства (например, msg) здесь и вызывает его. Мне не нужно самому писать геттер/сеттер. Там может быть связанная логика с msg, как это должно быть длиной в 100 символов и т. Д. Вся эта логика может быть в вашем компоненте. MessagePlayer не должен беспокоиться об этом. Это просто вызов вашего класса. –

+0

см. У меня есть класс, например, print public class print {public void static main (String args []) {System.out.println ("print"); }} см. этот код, мы можем использовать любое место для печати, поэтому можем ли мы назвать его повторно используемым? – 2013-02-22 07:22:51

0

Многоразовые компоненты - это просто готовые фрагменты кода программирования, предназначенные для выполнения определенной функции.
Фасоль - это «капсулы» кода, каждый из которых предназначен для определенной цели. Преимущество Java Beans над стандартными средствами управления программным обеспечением заключается в том, что Beans являются независимыми и не являются специфичными для операционных систем или сред разработки. Бин, созданный в одной среде разработки, может быть легко скопирован и изменен другим. Это позволяет Java Beans большей гибкости в корпоративных вычислениях, поскольку компоненты легко разделяются между разработчиками. Увлекательная концепция Beans связана с тем, что приложение, созданное на Java, может использоваться как Bean, , которое может быть использовано для создания других приложений.

0

Java Bean и многократно используемый компонент около немного разные вещи. Многие слова сказали there о Java Beans, пожалуйста посмотреть. Наконец, это всего лишь набор соглашений, которые некоторые каркасы, приложения и другие программисты ожидают от вашего кода. Ничего больше.

многоразовый компонент является более общим, означает, что вы можете повторно использовать код в различных частях вашей системы/приложения. Или даже другие приложения могут использовать ваш код, отображаемый как API. Простой полезный класс для работы со строками, некоторые доменный объект (например, класс Student, oh, Java Bean также есть!), некоторые служба отправки электронной почты, XML-парсер - все они являются компонентами многократного использования.

UPD. Отвечая на вопрос от комментариев, просто печати многоразового компонент

public class OutStd { 

    public static void print(String string) { 
     System.out.println(string); 
    } 

} 

public class SomeOtherComponent() { 

    public void doSomeImportantStuff() { 
    // reuse existing print functionality 
    OutStd.print("Some string"); 
    // other stuff 
    } 

} 
+0

см. У меня есть класс, например, печать Публичный класс print { public void static main (String args []) { System.out.println ("print"); } } см. Этот код мы можем использовать любое место для печати, поэтому можем ли мы назвать его многоразовым? – 2013-02-22 07:20:46

+0

Добавлено обновление ответа – udalmik

Смежные вопросы