[Âü°í] DBÀÇ ¾Õ, µÚ, ƯÁ¤ ´ÜÀ§ °Ë»ö ¼Ò½º


[ Follow Ups ] [ Post Followup ] [ ÀÚ¹Ù ¹¯°í ´äÇϱâ ]

Posted by Àü´öÂù on December 02, 1997 at 21:19:08:

In Reply to: ResultSetÀÇ Previous()? posted by ¹é½Â¿ë on December 01, 1997 at 18:16:06:

[Âü°í] DBÀÇ ¾Õ, µÚ, ƯÁ¤ ´ÜÀ§ °Ë»ö ¼Ò½º


¾È³çÇϼ¼¿ä. ÀÚ¹Ù Àú¿É ½Ã½ºÅÛÀÇ Àü´öÂùÀÔ´Ï´Ù.


Á¦°¡ ¾à 2-3´Þ Àü¿¡ ÀÛ¼ºÇÑ JTable¿¡ Ã¥ ¸ñ·Ï º¸¿©ÁÖ±â
JDBCÇÁ·Î±×·¥ ÀÛ¼º½Ã ¹«½ÄÇÑ ¹æ¹ýÀ¸·Î 20°³ÀÇ ´ÜÀ§¸¸²û¾¿
¾Õ¶Ç´Â µÚ·Î ¶Ç´Â ƯÁ¤ ¹øÈ£·Î Á¡ÇÁ°¡´ÉÇϵµ·Ï ÀÛ¼ºÇÑ °ÍÀε¥
Àü¿¡ ÀúÀÇ Java Info Shop¿¡ A.AshopÀ̶ó°í Çؼ­ ±×¸²À»
º¸¿©µå¸®ÀûÀÌ ÀÖÁö¿ä. Áö±ÝÀº Áö¿üÁö¸¸.


Àüü 4°³ÀÇ Å¬·¡½º ÄÚµå·Î ÀÛ¼ºµÇ¾î Àִµ¥, 2°³Á¤µµÀÇ ¼Ò½º°¡
°ü·ÃÀÌ ÀÖ´Â°Í °°¾Æ 2°³¸¸ ¿Ã¸³´Ï´Ù.
¾Æ·¡°ÍµéÀº ¸ÞÀÎÀÌ ¾Æ´Ï±â ¶§¹®¿¡ ½ÇÇàÀÌ ¾ÈµÉ °ÍÀÔ´Ï´Ù.
¾Æ·¡ ¼Ò½º¸¦ º¸½Ã¸é ¾Æ½Ã°ÚÁö¸¸, Á¦°¡ ¹«ÁøÀå °¬´Ù ºÎÃƼ­
Äڵ尡 ¾û¸ÁÀԴϵð.


¿¹Àü¿¡ JDBC¿¡ ´ëÇÑ Á¤º¸°¡ ¾ø¾î ÀÌ·¸°Ô ÀÛ¼ºÇߴµ¥,
´ÜÁö Âü°íÇϽñ⠹ٶø´Ï´Ù.


¾Æ·¡ ÄÚµå·Î 20°³¾¿ ¾Õ, µÚ·Î °Ë»öÀÌ µÇ¸ç, ¹«ÁøÀå ¸¹Àº µ¥ÀÌÅÍÀÇ
ƯÁ¤ ¹øÈ£ºÎÅÍ 20°³¸¦ Ç¥ÇöÇÏ´Â °Íµµ 2-3´Þ Àü¿¡ Å×½ºÆ®·Î È®ÀÎ
ÇÏ¿´½À´Ï´Ù.


¿äÁò JDBC¸¦ ¸øÇÏ°í Àִµ¥, Â÷ÈÄ ÁÁÀº 󸮹æ¹äÀ» ¾Ë·Á JIS¸¦ ÅëÇØ
¾Ë·Áµå¸®µµ·Ï ÇÏ°Ú½À´Ï´Ù.


÷ºÎ ÆÄÀÏ
-----------------
bookGUI.java
dbConnection.java
-----------------


------------
bookGUI.java
------------
import com.sun.java.swing.*; // JFC»ç¿ëÀ» À§ÇØ import
import com.sun.java.swing.table.*; // JFC JTableÀÇ »ç¿ë
import com.sun.java.swing.text.*;


import java.awt.*;
import java.awt.event.*;


import bookman;


public class bookGUI extends Panel implements ActionListener { // JFrameÀÇ »ó¼ÓÇØ bookTable¸¸µë

static JTable table; // JTable°´Ã¼ table
TableDataModel dataModel; // JTableÀÇ Model
JButton list, inse, modi, dele, sear; // list, inse, modi, dele, sear¹öÆ° Ãß°¡
JButton back, top, next; // back, top, next¹öÆ° Ãß°¡
JButton goButton; // ÁýÁ¢À̵¿ ¹öÆ° Ãß°¡
JButton searchButton; // search½ÇÇà ¹öÆ°
JLabel whereLabel; // BOOK ManagerÀÇ ¶óº§À» Ç¥½Ã
JLabel searchLabel, searchCountLable; // searchItem, search°á°úÀÇ ¶óº§
JPanel jp1, jp2, jp21, jp22, jp23, jp3, jp4; // jp1:¹öÆ°5°³, jp2:info, go, orderGroup, jp3:JTable jp4:jp1, jp3, searchGroup
JPanel searchPanel; // searchGroup Panel
JComboBox jumpCombo, searchCombo; // goGroupÀÇ jumpCombo¿Í searchGroupÀÇ searchCombo
TextField searchTF, searchTF1; // °Ë»öÇÒ ¹®ÀÚ, °Ë»öµÈ DBÀÇ Àüü¼ö ³ªÅ¸³¾ °÷
static int jumpInt=0; // goGroup·Î Á÷Á¢ À̵¿ÇÒ DBÀÇ ¹øÈ£ ÀúÀå
bookman bmObject=new bookman(); // bookmanÀÇ °´Ã¼ »ý¼º
static int startCount1; // orderGroup¿¡¼­ »ç¿ëÇÒ <,>ÀÇ À̺¥Æ®½Ã ½ÃÀÛ¹øÈ£ °è»ê
static int allCount; // Àüü DBÀÇ °¹¼ö ÀúÀå
static int stateInt=1; // ÇöÀç ¾î¶² ¹öÆ°ÀÇ »óÅÂÀΰ¡ ¾Ë¸²
static int searchItem=1; // °Ë»öÇÒ DBÀÇ Ç׸ñÀ» ¾Ë·ÁÁÜ
static String searchString; // °Ë»öÇÒ ¹®ÀÚ¿­À» ÀúÀåÇصÒ
static boolean searchBoolean=false; // óÀ½ °Ë»ö½Ã¿¡´Â searchTF¸¦ ºóÄ­À¸·Î ¼³Á¤
static String firstNumberString;
static int firstNumberInt;
static Object[][] firstNumberObject;

public bookGUI(Object[][] bdata, int dbCount, int startCount){
// bdata:DB¿¡¼­ Àоî¿Â 20°³, dbCount´Â °Ë»öµÈ DBÀÇ ¼ö, startCount:ÇöÀç ³ªÅ¸³­ DBÀÇ Ã¹¹ø° ¹øÈ£
super();

startCount1=startCount; // orderGroupÀÇ < >󸮸¦ À§ÇØ
if(stateInt==5 && allCount>20) {
firstNumberString=(String)bdata[0][1];
firstNumberInt=Integer.parseInt(firstNumberString);
} else
allCount=dbCount; // allCount : Àüü DBÀÇ °¹¼ö
bookTable(bdata, dbCount); // bdata¿Í dbCount¸¦ °¡Áö°í JTableÀ» ¸¸µë
}

public void bookTable(Object[][] bdata, int dbCount) { // Table¿¡ µé¾î°¥ 20°³ÀÇ Data¿Í DBÀÇ Àüü °¹¼ö
final Object[][] data=bdata; // table¿¡ Ç¥ÇöÇÒ µ¥ÀÌÅÍ bookmanÀ¸·ÎºÎÅÍ ¹Þ¾Æ ÀúÀå


dataModel=new JTableDataModelAdapter() {
public int getRowCount() {
return data[0].length-1;
}
public Object getValueAt(Object columnldentifier, int rowIndex){
for(int columnIndex = 0; columnIndex < data.length; columnIndex++) {
if(data[columnIndex][0].equals(columnldentifier)) {
return data[columnIndex][rowIndex+1];
}
}
return "";
}
public void setValueAt(Object aValue, Object columnIdentifier, int rowIndex) {
for(int columnIndex = 0; columnIndex < data.length; columnIndex++) {
if(data[columnIndex][0].equals(columnIdentifier)){
data[columnIndex][rowIndex+1]=aValue;
}
}
}
};


JTable table=new JTable(dataModel);


for(int columnIndex=0; columnIndex < data.length; columnIndex++) {
JTableColumn newColumn=new JTableColumn(data[columnIndex][0]);

if(columnIndex <1 ){ // ù¹ø° Çʵå´Â ÆøÀ» 80À¸·Î
newColumn.setWidth(80);
} else if(columnIndex <2) { // 2¹ø° Çʵå´Â ÆøÀ» 220À¸·Î
newColumn.setWidth(220);
} else {
newColumn.setWidth(130); // 2º¸´Ù Å« 3,4Çʵå´Â 130À¸·Î ÆøÀ» ¼³Á¤
}

// °¢ Çʵå CellÀÇ ¼Ó¼ºÀ» Ç¥½Ã
/* if(newColumn.getIdentifier().equals("Number"))
newColumn.setCellEditor(new JCellEditor(new JTextField("")));
if(newColumn.getIdentifier().equals("Name"))
newColumn.setCellEditor(new JCellEditor(new JTextField("")));
if(newColumn.getIdentifier().equals("Author"))
newColumn.setCellEditor(new JCellEditor(new JTextField("")));
if(newColumn.getIdentifier().equals("Publish")) */
newColumn.setCellEditor(new JCellEditor(new JTextField(""))); // JTextField·Î ¼Ó¼º º¯°æ
table.addColumn(newColumn); // TableÀÇ cell ÇϳªÇϳª¾¿ ÀüÅ׸¦ ¸¸µë
}

JScrollPane scrollpane = new JScrollPane();
JTableHeader tableHeader = table.getTableHeader(); // DBÇʵå¸í ¾òÀ½


JViewport headerViewport=new JViewport();
headerViewport.setLayout(new BoxLayout(headerViewport, BoxLayout.X_AXIS)); // DBÇʵå¸í XÃàÀ¸·Î Á¤·Ä¹èÄ¡
headerViewport.add(tableHeader); // DBÀÇ Çʵå¸í
scrollpane.setColumnHeading(headerViewport);


JViewport mainViewport=scrollpane.getViewport();
mainViewport.add(table);


tableHeader.setUpdateTableInRealTime(false);

table.setModel(dataModel);

buttonGroup(); // JPanel 1, list, inse, modi, dele, sear¹öÆ° »ý¼º¹× ¹èÄ¡

jp2=new JPanel(); // JPanel 2, infoGroup, goGroup, orderGroup¸¦ Æ÷ÇÔÇÒ Panel
infoGroup(); // JPanel 21, Àüü DBÀÇ ¼ö¸¦ Ç¥½Ã
goGroup(dbCount); // JPanel 22, Á÷Á¢ À̵¿
orderGroup(); // JPanel 23, ¾Õ, µÚ 20°³¸¦ °Ë»ö, top:¸ÇÀ§·Î

jp3=new JPanel(); // JTableÀ» ³ÖÀ» Panel
jp3.add(headerViewport, "North"); // JTableÀÇ Çʵ带 ¹èÄ¡
jp3.add(table, "Center"); // JTable¹èÄ¡

jp4=new JPanel(); // jp1, jp3, searchPanelÆ÷ÇÔ
jp4.setLayout(new BorderLayout()); // »ç¹æÇâ ·¹À̾ƿô
jp4.add(jp1, "North"); // jp4¹èÄ¡

if(stateInt==5) { // searButtonÀÌ ´­·¯Á³À¸¸é ½ÇÇà
searchGroup(dbCount); // searchPanelÀ» ¸¸µë, dbCount:°Ë»ö°á°úÀÇ Àüü¼ö
jp4.add(searchPanel, "Center"); // jp4ÀÇ Á߾ƿ¡ ¹èÄ¡
jp4.add(jp3, "South"); // JTableÀ» ¾Æ·¡¹èÄ¡
} else { // search»óÅ°¡ ¾Æ´Ï¸é
jp4.add(jp3, "Center"); // JTableÀ» Á߾ƹèÄ¡
}


setLayout(new BorderLayout()); // Àüü ·¹À̾ƿô ¼³Á¤
add(jp4, "North"); // jp4(buttonGroup, JTable, searchGroup)¸¦ À§¿¡ ¹èÄ¡
add(jp2, "Center"); // jp2(infoGroup, goGroup, orderHroup)¸¦ Áß¾Ó¿¡ ¹èÄ¡
}

public void buttonGroup() {
list=new JButton("BOOK ¸ñ·Ï");
inse=new JButton("BOOK Ãß°¡");
modi=new JButton("BOOK ¼öÁ¤");
dele=new JButton("BOOK »è¼¼") ;
sear=new JButton("BOOK °Ë»ö");

list.setActionCommand("list");
inse.setActionCommand("inse");
modi.setActionCommand("modi");
dele.setActionCommand("dele");
sear.setActionCommand("sear");

list.addActionListener(this);
inse.addActionListener(this);
modi.addActionListener(this);
dele.addActionListener(this);
sear.addActionListener(this);

jp1=new JPanel();
// jp1.setLayout(new FlowLayout());
whereLabel=new JLabel("BOOK-Manager");
jp1.add(whereLabel);
jp1.add(list);
jp1.add(inse);
jp1.add(modi);
jp1.add(dele);
jp1.add(sear);
}

public void infoGroup() {
JLabel allLable=new JLabel("DataBase All Count");
JTextField allCountTF=new JTextField(""+allCount, 5);
allCountTF.setEditable(false);

jp21=new JPanel();
jp21.setBackground(Color.lightGray);
// jp21.setLayout(new FlowLayout());
jp21.add(allLable);
jp21.add(allCountTF);
jp2.add(jp21);
}

public void goGroup(int dbCount) {
JBorderedPane tp;
int jumpCount;
jumpCount=dbCount/20;

tp=new JBorderedPane();
tp.setMaximumSize(new Dimension(Integer.MAX_VALUE,100));
tp.setLayout(new BoxLayout(tp, BoxLayout.X_AXIS));
tp.add(Box.createRigidArea(new Dimension(6,1)));

jumpCombo = new JComboBox();
jumpCombo.setMaximumSize(new Dimension(Integer.MAX_VALUE,30));

for(int i = 0; i jumpCombo.addPossibleValue(" "+(i*20+1)+" ");
}
tp.add(jumpCombo);
tp.add(Box.createRigidArea(new Dimension(6,1)));

jp22=new JPanel();
// jp22.setLayout(new FlowLayout());
JLabel jumpLabel=new JLabel("Jump Page");
goButton=new JButton("GO");
goButton.setActionCommand("go");
goButton.addActionListener(this);
jp22.add(jumpLabel);
jp22.add(tp);
jp22.add(goButton);
jp2.add(jp22);
}


public void orderGroup() {
back=new JButton("<");
top=new JButton("TOP");
next=new JButton(">") ;

back.setActionCommand("<");
top.setActionCommand("top");
next.setActionCommand(">");

back.addActionListener(this);
top.addActionListener(this);
next.addActionListener(this);

jp23=new JPanel();
// jp23.setLayout(new FlowLayout());
jp23.add(back);
jp23.add(top);
jp23.add(next);

jp2.add(jp23);
}

public int getJumpInt() {
return jumpInt;
}

public void searchGroup(int dbCount) {
JBorderedPane tp1;

tp1=new JBorderedPane();
tp1.setMaximumSize(new Dimension(Integer.MAX_VALUE,100));
tp1.setLayout(new BoxLayout(tp1, BoxLayout.X_AXIS));
tp1.add(Box.createRigidArea(new Dimension(6,1)));

searchCombo = new JComboBox();
searchCombo.setMaximumSize(new Dimension(Integer.MAX_VALUE,30));

searchCombo.addPossibleValue("Number");
searchCombo.addPossibleValue("Name");
searchCombo.addPossibleValue("Author");
searchCombo.addPossibleValue("Publish");
tp1.add(searchCombo);
tp1.add(Box.createRigidArea(new Dimension(6,1)));

searchPanel=new JPanel();
// jp22.setLayout(new FlowLayout());
searchLabel=new JLabel("Search Item");

searchButton=new JButton("Search");
searchButton.setActionCommand("search");
searchButton.addActionListener(this);

searchTF=new TextField(26);

searchCountLable=new JLabel("Search All");
searchTF1=new TextField(5);

searchPanel.add(searchLabel);
searchPanel.add(tp1);
searchPanel.add(searchTF);
searchPanel.add(searchButton);
searchPanel.add(searchCountLable);
if(searchBoolean==false)
searchTF1.setText("");
else
searchTF1.setText(""+dbCount);
searchPanel.add(searchTF1);
}


public void actionPerformed(ActionEvent e) {
if(e.getActionCommand().equals("list")) {
stateInt=1;
searchBoolean=false;
bmObject.setLogo(jumpInt);
} else if(e.getActionCommand().equals("inse")) {
System.out.println("inse");
} else if(e.getActionCommand().equals("modi")) {
System.out.println("modi");
} else if(e.getActionCommand().equals("dele")) {
System.out.println("dele");
} else if(e.getActionCommand().equals("sear")) {
stateInt=5;
bmObject.setLogo(startCount1);
} else if(e.getActionCommand().equals("<")) {
startCount1=startCount1-20;
if(startCount1<1)
startCount1=1;
bmObject.setLogo(startCount1);
} else if(e.getActionCommand().equals("top")) {
startCount1=1;
bmObject.setLogo(1);
} else if(e.getActionCommand().equals(">")) {
if(stateInt==5 && allCount>20) {
bmObject.setLogo(firstNumberInt+20);
} else if(searchBoolean==false){
startCount1=startCount1+20;
if(startCount1>allCount)
startCount1=(allCount/20)*20+1;
bmObject.setLogo(startCount1);
}
} else if(e.getActionCommand().equals("go")) {
jumpInt=(jumpCombo.getCurrentValueIndex())*20;
if(jumpInt!=0) // 0¹ø¿¡´Â ±×³É °¡Áö¸¸
jumpInt=jumpInt+1; // ³ª¸ÓÁö´Â 1À» ´õÇØ¾ß µÈ´Ù.
bmObject.setLogo(jumpInt);
} else if(e.getActionCommand().equals("search")) {
searchItem=searchCombo.getCurrentValueIndex();
searchString=searchTF.getText();
searchBoolean=true;
bmObject.search(searchItem, searchString);
}
}
}


-------------
dbConnection.java
-------------
import java.sql.*;



class dbConnection {


Connection con; // DB¿¡ ¿¬°áÇÒ °´Ã¼
Object[][] bookdata=new Object[4][21];; // DBµ¥ÀÌÅÍ ÀúÀåÇÒ °÷
static int dbCount=0;
Statement stmt;
ResultSet rs;

public Object[][] dbConnection(int startCount) { // bookmanÀ¸·Î bookdata[][]ÀÇ DBÀúÀå°ª ¸®ÅÏ

init_db(); // DB¿¬°á ÃʱâÈ­


try {
common();
rs=stmt.executeQuery("SELECT number, name, author, publish FROM book");
read_db(startCount); // DBµ¥ÀÌÅÍ Àоî¿À±â
} catch(SQLException e) {
System.out.println(e.toString());
}


close_db(); // DB¿¬°á Á¾·á
return bookdata; // bookman¿¡¼­ DBµ¥ÀÌÅÍ º¸³¿
}

public Object[][] dbConnection(int searchItem, String searchString) {
init_db(); // DB¿¬°á ÃʱâÈ­


try {
common();
if(searchItem==0) {
rs = stmt.executeQuery("Select * from book where number = '" + searchString + "'");
} else if(searchItem==1) {
rs = stmt.executeQuery("Select * from book where name = '" + ksc2asc(searchString) + "'");
} else if(searchItem==2) {
rs = stmt.executeQuery("Select * from book where author = '" + ksc2asc(searchString) + "'");
} else if(searchItem==3) {
rs = stmt.executeQuery("Select * from book where publish = '" + ksc2asc(searchString) + "'");
}
read_db(1);
} catch(SQLException e) {
System.out.println(e.toString());
}


close_db(); // DB¿¬°á Á¾·á
return bookdata; // bookman¿¡¼­ DBµ¥ÀÌÅÍ º¸³¿
}

public void common() {
stmt=null; // DB¿¡ ÁúÀÇ¿¡ »ç¿ëÇÒ °´Ã¼

bookdata[0][0] = "Number"; // ÇʵåÀ̸§
bookdata[1][0] = "Name";
bookdata[2][0] = "Author";
bookdata[3][0] = "Publish";

try {
stmt=con.createStatement(); // con°´Ã¼¿¡ ¿¬°áµÈ °÷¿¡ ÁúÀÇ°¡´ÉÇϵµ·Ï ÇÔ
} catch(SQLException e) {
System.out.println(e.getMessage());
}
}


public void init_db() {
dbCount=0;

try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // MS Access»ç¿ëÀ§ÇÑ JDBC Driver·Îµå
con=DriverManager.getConnection("jdbc:odbc:bookDB"); // bookDB ODBC¿¡ ¿¬°á
} catch(SQLException e) { // SQLExceptionó¸®
System.out.println( e.getMessage());
e.printStackTrace();
} catch(ClassNotFoundException e) { // ClassNotFoundExceptionó¸®
System.out.println( e.getMessage());
e.printStackTrace();
}
}


public void read_db(int startCount) throws SQLException { // DB·ÎºÎÅÍ µ¥ÀÌÅÍ Àоî¿À´Â ºÎºÐ
int j=1; // bookdata[][]ÀÇ Ä«¿îÅÍ ¿ªÈ°
// DB¿¡¼­ µ¥ÀÌÅÍ °¡Á®¿À±â À§ÇØ SELECTÁúÀÇ ½ÇÇà
while(rs.next()) { // ÁúÀÇ °á°ú°¡ ÀÖÀº¸é °è¼Ó ¹Ýº¹
dbCount++;
if(j<21 && dbCount>=startCount){
String numberData=rs.getString("number");
String nameData=rs.getString("name");
String authorData=rs.getString("author");
String publishData=rs.getString("publish");

bookdata[0][j]=numberData;

if(nameData==null)
bookdata[1][j]="-";
else
bookdata[1][j]=asc2ksc(nameData);

if(authorData==null)
bookdata[2][j]="-";
else
bookdata[2][j]=asc2ksc(authorData);

if(nameData==null)
bookdata[3][j]="-";
else
bookdata[3][j]=asc2ksc(publishData);
j=j+1; // bookdata[][]ÀÇ ±â¾ïÀå¼Ò Áõ°¡ÈÄ ´ÙÀ½ µ¥ÀÌÅÍ ÀúÀå
}
}
if(j<21) {
for(j=j; j<21; j++) {
bookdata[0][j]="-";
bookdata[1][j]="-";
bookdata[2][j]="-";
bookdata[3][j]="-";
}
}
stmt.close(); // ´õÀÌ»ó ÁúÀÇÇÒ ¹®ÀåÀÌ ¾ø¾î ´ÝÀ½
}


public void close_db() { // DB¿ÍÀÇ ¿¬°áÁ¾·á ºÎºÐ
try {
con.close(); // DB¿Í ¿¬°áÇÒ ÇÊ¿ä°¡ ¾ø¾îÁ® ´ÝÀ½
} catch(SQLException e) {
System.out.println( e.getMessage());
e.printStackTrace();
}
}

public int getdbCount() {
return dbCount;
}


public String ksc2asc(String str) {
String result=null;
try {
byte[] rawBytes=str.getBytes("KSC5601");
result=new String(rawBytes,"8859_1");
}
catch (java.io.UnsupportedEncodingException e) {
System.err.println(e.toString());
}
return result;
}

public String asc2ksc(String str) { // ÇÑ±Û µ¥ÀÌÅ͸¦ Á¦´ë·Î Ãâ·ÂÇϱâ À§ÇØ º¯È¯ÇÔ
String result=null; // asc¸¦ ksc·Î º¯È¯ÇÑ °ªÀ» ÀúÀåÇÒ ¹®ÀÚ¿­
try {
byte[] rawBytes=str.getBytes("8859_1"); // º¸³½ Data ¸¦ 8859_1Çü½ÄÀÇ byte·Î ÀÐÀ½
result=new String(rawBytes,"KSC5601"); // À§ÀÇ 8859_1Çü½ÄÀÇ byte¸¦ ksc5601ÇüÅ·ΠÀоî Çѱ۷ΠǥÇö
}
catch (java.io.UnsupportedEncodingException e) { // Áö¿øÇÏÁö ¾Ê´Â Encoding¹æ½ÄÀÇ Exceptionó¸®
System.err.println(e.toString()); // ExceptionÀ» ¹®ÀÚ¿­·Î º¯ÇÑÇØ Consol¿¡ Ãâ·Â
}
return result; // asc¸¦ ksc·Î º¯È¯ÇÑ °ªÀ» µ¹·ÁÁÜ.
}


}






Follow Ups:



À̾ ±Û¿Ã¸®±â(´äÇϱâ)

À̸§:
E-Mail:
Á¦¸ñ:
³»¿ë:
°ü·Ã URL(¼±ÅÃ):
URL Á¦¸ñ(¼±ÅÃ):
°ü·Ã À̹ÌÁö URL:


[ Follow Ups ] [ Post Followup ] [ ÀÚ¹Ù ¹¯°í ´äÇϱâ ]