2016-04-05 18 views
0

Yüklenen bir metni istemciye çevirmek için Google translator API kullanıyorum. Dili seçmek için açılırum var. Ancak API'ya göndermek için koduna ihtiyacım var.Bir JSP sayfasına HashMap değerlerini alma

şöyle nedenle ben somut bir java sınıf içindeki bir HashMap kullanılan

countryCode.java

public class CountryCode { 

    public Map getCountryList() 
    { 
     String fileName = "countryCode.txt"; 
     Map<String, String> code = new HashMap<String, String>(); 
     String line; 
     BufferedReader fileReader = null; 
     try { 
      fileReader = new BufferedReader(new FileReader(fileName)); 
      try { 
       while((line = fileReader.readLine())!= null) 
       { 
        String[] mapPart = line.split(":", 2); 
        if(mapPart.length >= 2) 
        { 
         String key = mapPart[0]; 
         String val = mapPart[1]; 
         code.put(key, val); 
        } 
       } 
       fileReader.close(); 
      } catch (IOException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
     } catch (FileNotFoundException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 

     for (String key : code.keySet()) 
      { 
       System.out.println(key + ":" + code.get(key)); 
      } 
     return code; 
    } 
} 

bu Bootstrap

kullanılarak açılan translation.jsp ile benim JSP sayfası

<section class="bg-light-gray"> 
<div class="container"> 
    <form action="TextTranslation" method="post" class="form" role="form" enctype="multipart/form-data"> 
     <div class="row"> 
      <div id = "imageView" class="col-lg-8 center-block "> 
      <div class="btn-group"> 
       <a class="btn btn-default dropdown-toggle btn-select2" data-toggle="dropdown" href="#">Select a Region <span class="caret"></span></a> 
      <ul class="dropdown-menu"> 
     <% 
     %> 
    </ul> 
</div> 

Bu açılır kapanışta hashmap değerlerine nasıl erişebileceğimi anlayamıyorum. Herhangi bir fikriniz var mı? Önceden teşekkürler

cevap

0

size bir sunucu uygulaması aracılığıyla Jsp haritayı geçiyoruz Bir jsp etiketi

<jsp:useBean id="myId" class="package.name.CountryCode"/> 

<% 
    Map<String, String> myCode = myId.getCountryList(); 
    // do something with myCode 
%> 

kullandıktan sonra düz Java kullanabilirsiniz scriplets kullanmayı planlıyorsanız sadece bir nitelik olarak harita saklayabilir ve daha sonra İfade Diliyle Erişim

// within the Servlet you could set the attribute this way 

Map<String, String> myCode = myId.getCountryList(); 
request.setAttribute("code", myCode); 

// then within the Jsp you would access the map this way 

${code.nameofyourfield} 

// or 

${code['nameofyourfield']} 
+0

getCountryList() 'i çağırdıktan sonra nasıl devam edebilirim? –

+0

Değişkenleri etiketler içinde ayarladıktan sonra, Jsp sayfanızda İfade Dili ile kullanabilirsiniz. Ancak scriplet kullanmasını tavsiye etmem. İyi uygulama sayılmaz. Cevabı @Nicolas Filotto'ya bir göz atın: bu iyi bir alternatif olabilir. –

+0

bana hashmap değerlerini dropbox'a nasıl aktaracağım konusunda örnek bir kod sağlayabilir misiniz? –